* language.h (struct language_arch_info): New members
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 56a34e4d66991e72d4e28d851717e0fcaf4236ea..91869e43ca388f446079037135629465e5efe68f 100644 (file)
@@ -1,3 +1,634 @@
+2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * language.h (struct language_arch_info): New members
+       bool_type_default and bool_type_symbol.
+       (lang_bool_type): Remove prototype.
+       (LA_BOOL_TYPE): Remove macro.
+       (language_bool_type): Add prototype.
+       * language.c (lang_bool_type): Remove.
+       (language_bool_type): New function.
+
+       * value.h (value_in): Change return value to int.
+       * value.c (value_in): Return int instead of struct value *.
+
+       * eval.c (evaluate_subexp_standard): Call language_bool_type instead
+       of using LA_BOOL_TYPE.  Update call to value_in.
+       * ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
+       of using LA_BOOL_TYPE or builtin_type_int for boolean values.
+
+       * language.c (unknown_language_arch_info): Set bool_type_default member
+       of struct language_arch_info.
+       * ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
+       bool_type_default members of struct language_arch_info.
+       * c-lang.c (c_language_arch_info): Set bool_type_default member
+       of struct language_arch_info.
+       (cplus_language_arch_info): Set bool_type_symbol and bool_type_default
+       members of struct language_arch_info.
+       * f-lang.c (f_language_arch_info): Set bool_type_symbol and
+       bool_type_default members of struct language_arch_info.
+       * jv-lang.c (java_language_arch_info): Set bool_type_symbol and
+       bool_type_default members of struct language_arch_info.
+       * m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
+       bool_type_default members of struct language_arch_info.
+       * p-lang.c (p_language_arch_info): Set bool_type_symbol and
+       bool_type_default members of struct language_arch_info.
+
+2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * jv-lang.c (enum java_primitive_types): New type.
+       (java_language_arch_info): New function.
+       (java_language): Use it instead of c_language_arch_info.
+
+2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * value.h (value_bitstring_subscript): New prototype.
+       * valarith.h (value_bitstring_subscript): New function.
+       (value_subscript): No longer handle TYPE_CODE_BITSTRING.
+       * eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
+       instead of value_subscript to handle TYPE_CODE_BITSTRING.
+
+2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * expression.h (struct expression): New member GDBARCH.
+       * parse.c (parse_exp_in_context): Initialize it.
+       * parser-def.h (parse_gdbarch, parse_language): New macros.
+
+       * ada-exp.y (parse_type): New macro.
+       Replace builtin_type_ macros by using parse_type.
+       Replace current_language by parse_language.
+       * ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
+       Replace builtin_type_ macros.
+
+       * c-exp.y (parse_type): New macro.
+       Replace builtin_type_ macros by using parse_type.
+       (parse_number): Replace current_gdbarch by parse_gdbarch.
+       (yylex): Replace current_language by parse_language.
+
+       * f-exp.y (parse_type, parse_f_type): New macros.
+       Replace builtin_type_ macros by using parse_{f_,}type.
+       (parse_number): Replace current_gdbarch by parse_gdbarch.
+       (yylex): Replace current_language by parse_language.
+
+       * jv-exp.y (parse_type): New macro.
+       (parse_number): Replace builtin_type_ macros by using parse_type.
+
+       * m2-exp.y (parse_type, parse_m2_type): New macros.
+       Replace builtin_type_ macros by using parse_{m2_,}type.
+
+       * objc-exp.y (parse_type): New macro.
+       Replace builtin_type_ macros by using parse_type.
+       (parse_number): Replace current_gdbarch by parse_gdbarch.
+       (yylex): Replace current_language by parse_language.
+
+       * p-exp.y (parse_type): New macro.
+       Replace builtin_type_ macros by using parse_type.
+       (parse_number): Replace current_gdbarch by parse_gdbarch.
+       (yylex): Replace current_language by parse_language.
+
+2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
+       and DATA_SYMBOL_TYPE arguments.
+       * parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
+       DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
+       (write_dollar_variable): Update call.
+
+       * ada-exp.y (write_var_or_type): Update call.
+       * c-exp.y: Likewise.
+       * f-exp.y: Likewise.
+       * jv-exp.y: Likewise.
+       * m2-exp.y: Likewise.
+       * objc-exp.y: Likewise.
+       * p-exp.y: Likewise.
+
+2008-09-10  Joel Brobecker  <brobecker@adacore.com>
+
+       * ada-lang.c (ada_parent_type): Add handling of the case where
+       the _parent field is a pointer and/or has a parallel XVS type.
+       (ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
+       EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
+       the type of the tag instead of doing forcing an EVAL_NORMAL
+       expression evaluation.
+
+2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
+           Joel Brobecker  <brobecker@adacore.com>
+
+       * ada-lang.c (is_digits_suffix): New function.
+       (is_dot_digits_suffix): Remove.
+       (ada_lookup_symbol_list): Remove digits suffix from minimal symbols
+       before looking up in symbol table, and do not use wild matches on them.
+       (wild_match): Reimplement for speed and to allow matching of operator
+       symbols.
+       (is_valid_name_for_wild_match): Return zero for names that do not
+       follow the GNAT encoding.
+
+       (is_name_suffix): Fix typo in comment.
+       (to_record_with_fixed_variant_part): Ditto.
+
+2008-09-10  Pedro Alves  <pedro@codesourcery.com>
+
+       * Makefile.in (gnu-nat.o): New rule.
+
+2008-09-10  Joel Brobecker  <brobecker@adacore.com>
+
+       * ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
+       archecture-neutral builtin_type_int32 instead of builtin_type_int.
+
+2008-09-10  Joel Brobecker  <brobecker@adacore.com>
+
+       * ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
+       Add special handling for pointer types.
+
+2008-09-10  Pedro Alves  <pedro@codesourcery.com>
+
+       * inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
+       right scope level.
+       (inf_ttrace_resume, inf_ttrace_wait): Typos.
+
+2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * ada-lang.c (ada_array_length): Use builtin_type_int32 instead
+       of builtin_type_int.
+       (ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
+       instead of builtin_type_int.
+
+2008-09-09  Pedro Alves  <pedro@codesourcery.com>
+
+       * infrun.c (normal_stop): Run hook-stop last.
+
+2008-09-09  Pedro Alves  <pedro@codesourcery.com>
+
+       * gnu-nat.c (gnu_pid_to_exec_file): Delete.
+       (init_gnu_ops): Don't register it.
+
+2008-09-09  Pedro Alves  <pedro@codesourcery.com>
+
+       * gnu-nat.c (gnu_attach): Push target before fetching the list of
+       threads.
+
+2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * valops.c (value_cast_structs): Return NULL for failure.
+       (value_cast): Handle NULL from value_cast_structs.
+       (value_fetch_lazy): Call check_typedef.  Remove unused variable.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * inferior.h (context_switch_to): Delete.
+       * infrun.c (context_switch): Don't save and load infrun state.
+       (context_switch_to): Delete.
+
+       * infcmd.c (proceed_thread_callback): Replace context_switch_to
+       calls by switch_to_thread calls.
+
+       * gdbthread.h (save_infrun_state, load_infrun_state): Delete.
+       * thread.c (main_thread_state, main_thread_executing): Delete.
+       (inferior_thread): Delete references to them.
+       (add_thread_silent): Fix case where we're adding a thread with the
+       same ptid as an exited thread.  Remove references to
+       context-switching.
+       (load_infrun_state, save_infrun_state): Delete.
+       (thread_alive, is_thread_state, any_running, is_executing)
+       (set_executing): Remove the special handling for targets that
+       don't register any thread.
+       (restore_current_thread, thread_apply_all_command)
+       (do_captured_thread_select): Unconditionally call
+       switch_to_thread.
+
+       * mi/mi-main.c (mi_cmd_execute): Check for exited threads.
+       Call switch_to_thread instead of context_switch_to.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       Remove global continuations in favour of a per-thread
+       continuations.
+
+       * gdbthread.h (struct thread_info): Add comments around
+       continuations and intermediate_continuations.
+       (save_infrun_state, load_infrun_state): Delete continuations and
+       intermediate_continuations arguments.
+       * infrun.c (context_switch): Don't context-switch the continuations.
+       * thread.c (clear_thread_inferior_resources): Discard all
+       continuations of the thread we're clearing.
+       (save_infrun_state, load_infrun_state): Delete continuations and
+       intermediate_continuations arguments, and the code referencing
+       them.
+       * utils.c: Include "gdbthread.h".
+       (cmd_continuation, intermediate_continuation): Delete.
+       (add_continuation): Add thread_info* argument.  Install the
+       continuation on it.
+       (restore_thread_cleanup): New.
+       (do_all_continuations_ptid, do_all_continuations_thread_callback):
+       New.
+       (do_all_continuations): Reimplement.
+       (discard_all_continuations_thread_callback,
+       discard_all_continuations_thread): New.
+       (discard_all_continuations): Reimplement.
+       (add_intermediate_continuation): Add thread_info* argument.
+       Install the continuation on it.
+       (do_all_intermediate_continuations_thread_callback)
+       (do_all_intermediate_continuations_thread): New.
+       (do_all_intermediate_continuations): Reimplement.
+       (discard_all_intermediate_continuations_thread_callback): New.
+       (discard_all_intermediate_continuations_thread): New.
+       (discard_all_intermediate_continuations): Reimplement.
+
+       * breakpoint.c (until_break_command): Install the continuation on
+       the current thread.
+
+       * defs.h (cmd_continuation, intermediate_continuation): Delete.
+       (struct thread_info): Forward declare.
+       (add_continuation, add_intermediate_continuation): Add
+       thread_info* argument.
+       (do_all_continuations_thread, discard_all_continuations_thread)
+       (do_all_intermediate_continuations_thread)
+       (discard_all_intermediate_continuations_thread): Declare.
+       * inf-loop.c (inferior_event_handler): In non-stop only run
+       continuations on the thread that stopped.  In all-stop, run
+       continuations on all threads.
+       * infcmd.c (step_once, finish_command): Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       Remove the global stop_step in favour of a per-thread
+       stop_step.
+
+       * inferior.h (stop_step): Delete.
+
+       * gdbthread.h (struct thread_info): Add comments to stop_step.
+       (save_infrun_state, load_infrun_state): Remove stop_step argument.
+       * thread.c (load_infrun_state, save_infrun_state): Remove
+       stop_step argument, and references to it.
+
+       * infrun.c (clear_proceed_status): Clear stop_step.
+       (fetch_inferior_event): Adjust.
+       (context_switch): Don't context-switch stop_step.
+       (handle_inferior_event): Adjust.
+       (normal_stop): Adjust.
+       (save_inferior_status, restore_inferior_status): Adjust.
+
+       * infcmd.c (stop_step): Delete.
+       (step_1, step_1_continuation, step_once, until_next_command):
+       Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       Remove the global step_multi in favour of a per-thread
+       step_multi.
+
+       * inferior.h (step_multi): Delete.
+       * gdbthread.h (struct thread_info): Add comments around
+       step_multi.
+       (save_infrun_state, load_infrun_state): Remove step_multi
+       parameter.
+       * thread.c (load_infrun_state, save_infrun_state): Remove
+       step_multi argument, and references to it.
+       * infcmd.c (step_multi): Delete.
+       (step_1): Adjust.
+       (step_1_continuation, until_next_command): Adjust.
+       * infrun.c (fetch_inferior_event): Adjust.
+       (context_switch): Don't context-switch step_multi.
+       (print_stop_reason, normal_stop): Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       Remove the global stop_signal in favour of a per-thread
+       stop_signal.
+
+       * inferior.h (stop_signal): Delete.
+       * gdbthread.h (save_infrun_state, load_infrun_state): Remove
+       stop_signal argument.
+       * thread.c (load_infrun_state, save_infrun_state): Remove
+       stop_signal argument.  Don't reference it.
+
+       * infcmd.c (stop_signal): Delete.
+       (program_info): Adjust.
+       * infrun.c (resume): Clear stop_signal.
+       (proceed): Adjust.  Pass the last stop_signal to the thread we're
+       resuming.
+       (context_switch): Don't context-switch stop_signal.
+       (handle_inferior_event, keep_going): Adjust.
+       (save_inferior_status, restore_inferior_status): Adjust.
+
+       * fbsd-nat.c: Include "gdbthread.h".
+       (find_signalled_thread, find_stop_signal): New.
+       (fbsd_make_corefile_notes): Use it.
+       * fork-child.c (startup_inferior): Adjust.
+
+       * linux-nat.c (get_pending_status): Adjust.
+       (linux_nat_do_thread_registers): Adjust.
+       (find_signalled_thread, find_stop_signal): New.
+       (linux_nat_do_thread_registers): Add stop_signal parameter.
+       (struct linux_nat_corefile_thread_data): Add stop_signal member.
+       (linux_nat_corefile_thread_callback): Pass stop_signal.
+       (linux_nat_do_registers): Delete.
+       (linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
+       there's always a thread.
+
+       * procfs.c (find_signalled_thread, find_stop_signal): New.
+       (find_stop_signal): New.
+       (procfs_do_thread_registers): Add stop_signal parameter.
+       (struct procfs_corefile_thread_data): Add stop_signal member.
+       (procfs_corefile_thread_callback): Pass args->stop_signal.
+       (procfs_make_note_section): Find the last stop_signal.
+
+       * solib-irix.c: Include gdbthread.h.
+       (irix_solib_create_inferior_hook): Adjust.
+       * solib-osf.c: Include gdbthread.h.
+       (osf_solib_create_inferior_hook): Adjust.
+       * solib-sunos.c: Include gdbthread.h.
+       (sunos_solib_create_inferior_hook): Adjust.
+       * solib-svr4.c: Include gdbthread.h.
+       (svr4_solib_create_inferior_hook): Adjust.
+
+       * win32-nat.c (do_initial_win32_stuff): Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * gdbthread.h (struct thread_info): Add comments around
+       proceed_to_finish.
+       (save_infrun_state, load_infrun_state): Remove proceed_to_finish
+       argument.
+       * thread.c (load_infrun_state, save_infrun_state): Delete
+       proceed_to_finish argument and references to it.
+
+       * infcall.c (call_function_by_hand): Adjust.
+       * infcmd.c (finish_command): Adjust.
+       * infrun.c (proceed_to_finish): Delete.
+       (clear_proceed_status): Adjust.
+       (context_switch): Don't context-switch proceed_to_finish.
+       (normal_stop, save_inferior_status, restore_inferior_status):
+       Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * inferior.h (stop_bpstat): Delete.
+
+       * breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
+       
+       * breakpoint.c (bpstat_do_actions): Rename to ...
+       (bpstat_do_actions_1): ... this.  Make static.  Change return type
+       to int.  Return true if a breakpoint proceeded.
+       (bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
+       (delete_breakpoint): Don't reference the global stop_bpstat; it's
+       gone.
+
+       * gdbthread.h (struct thread_info): Add stop_bpstat.
+       (save_infrun_state, load_infrun_state): Remove stop_bpstat
+       argument.
+       * thread.c (load_infrun_state, save_infrun_state): Remove
+       stop_bpstat argument, and the code referencing it.
+
+       * infcall.c: Include "gdbthread.h".
+       (call_function_by_hand): Adjust.
+       * exceptions.c: Include "gdbthread.h".
+       (throw_exception): Adjust.
+       * infcmd.c (stop_bpstat): Delete.
+       (continue_command): In all-stop, set the ignore count on the
+       thread that reported the stop.  In non-stop, set it on the current
+       thread.
+       (finish_command_continuation): Adjust.
+       (program_info): Adjust.
+       * infrun.c (clear_proceed_status): Adjust.
+       (context_switch): Don't context-switch stop_bpstat.
+       (handle_inferior_event): Adjust.
+       (normal_stop): Adjust.
+       (save_inferior_status, restore_inferior_status): Adjust.
+
+       * inf-loop.c (inferior_event_handler): Remove parameter to
+       bpstat_do_actions call.
+       * top.c (command_loop): Remove parameter to bpstat_do_actions
+       call.  Call it unconditionally.
+       * event-top.c (command_handler): Ditto.
+       * python/python.c (execute_gdb_command): Ditto.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * inferior.h (step_over_calls): Delete.
+
+       * gdbthread.h (save_infrun_state, load_infrun_state): Remove
+       step_over_calls argument.
+       * thread.c (save_infrun_state, load_infrun_state): Remove
+       step_over_calls argument.  Adjust.
+
+       * infcmd.c (step_over_calls): Delete.
+       (step_1): Adjust.
+       * infrun.c (clear_proceed_status): Adjust.
+       (context_switch): Don't context-switch step_over_calls.
+       (handle_inferior_event, save_inferior_status)
+       (restore_inferior_status): Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       Remove context switching in favour of accessing thread_info fields
+       directly.
+
+       * infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
+       Delete.
+       (struct thread_stepping_state): Delete.
+       (gtss, tss): Delete.
+       (follow_inferior_reset_breakpoints, follow_exec)
+       (resume, clear_proceed_status): Adjust.
+       (prev_pc): Delete.
+       (proceed, start_remote, init_wait_for_inferior): Adjust.
+       (struct execution_control_state): Add event_thread member.
+       (delete_step_resume_breakpoint_callback)
+       (delete_step_thread_step_resume_breakpoint)
+       (delete_step_thread_step_resume_breakpoint_cleanup)
+       (delete_step_thread_step_resume_breakpoint): New.
+       (wait_for_inferior, init_execution_control_state): Use
+       delete_step_thread_step_resume_breakpoint_cleanup.
+       (wait_for_inferior): Set the event_thread.
+       (fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
+       with delete_step_thread_step_resume_breakpoint.
+       (init_thread_stepping_state): Change parameter type to
+       thread_info.  Adjust.
+       (context_switch): Don't context switch prev_pc,
+       stepping_over_breakpoint, step_resume_breakpoint,
+       step_range_start, step_range_end, step_frame_id,
+       tss->stepping_over_breakpoint,
+       tss->stepping_through_solib_after_catch,
+       tss->stepping_through_solib_catchpoints, tss->current_line, or
+       tss->current_symtab.
+       (adjust_pc_after_break, handle_inferior_event)
+       (currently_stepping, step_into_function)
+       (insert_step_resume_breakpoint_at_sal)
+       (insert_longjmp_resume_breakpoint, keep_going): Adjust.
+       (clear_stepping_state): New.
+       (normal_stop): Adjust.
+       (save_inferior_status, restore_inferior_status): Adjust.
+
+       * gdbthread.h (struct thread_info): Comments describing the
+       members moved here.  Add step_after_step_resume_breakpoint.
+       (delete_step_resume_breakpoint): Add thread_info argument.
+       (save_infrun_state, load_infrun_state): Remove prev_pc,
+       trap_expected, step_resume_breakpoint, step_range_start,
+       step_range_end, step_frame_id, another_trap,
+       stepping_through_solib_after_catch,
+       stepping_through_solib_catchpoints, current_line and
+       current_symtab function arguments.
+       (inferior_thread): Declare.
+
+       * thread.c (inferior_thread): New.
+       (delete_step_resume_breakpoint): Add a thread_info parameter and
+       rewrite.
+       (load_infrun_state, save_infrun_state): Remove prev_pc,
+       trap_expected, step_resume_breakpoint, step_range_start,
+       step_range_end, step_frame_id, stepping_over_breakpoint,
+       stepping_through_solib_after_catch,
+       stepping_through_solib_catchpoints, current_line and
+       current_symtab args.  Remove code referencing them.
+
+       * infcmd.c (step_range_start, step_range_end, step_frame_id):
+       Delete.
+       (step_1, step_once, until_next_command): Adjust.
+
+       * inferior.h (step_range_start, step_range_end, step_frame_id):
+       Delete.
+
+       * linux-nat.c (linux_child_follow_fork): If following the child,
+       move the step state to it.  Adjust.
+       * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
+       * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
+       thread.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * corelow.c (add_to_thread_list): If this is the first time we
+       hear about thread info, update inferior_ptid.
+       (core_open): Clear the thread list and set inferior_ptid before
+       acknowledging a new inferior.  Find threads before fetching
+       register info.  Give an upper target layer a chance to find and
+       claim new threads.  Print core generation and stop signal info
+       after finding new threads.
+       (get_core_register_section): Look at the lwp member of
+       inferior_ptid for detecting if we have threads info, instead of
+       the pid member.
+       (core_pid_to_str): New.
+       (init_core_ops): Register core_pid_to_str.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * spu-linux-nat.c (spu_child_post_startup_inferior)
+       (spu_child_post_attach): Don't add the main thread here.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       Use ptid_t.tid to store thread ids instead of ptid_t.pid.
+
+       * gnu-nat.c (inf_validate_procs): If this is the first time we're
+       seeing a thread id, extend the main thread's ptid.  If we still
+       have pending execs, don't be verbose about new threads.
+       (gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
+       (gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
+       * i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
+       Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * procfs.c (to_attach): Create a procinfo for the current lwp.
+       Add it to gdb's thread list.
+       (procfs_fetch_registers, procfs_store_registers): Assume there's
+       always an lwp.
+       (procfs_wait): Don't add the main thread here.
+       (procfs_init_inferior): Create a procinfo for the main lwp here.
+       Change main thread's ptid with thread_change_ptid.
+       (procfs_notice_thread): Check for exited threads.
+       (procfs_corefile_thread_callback): Remove check for the main
+       process.
+       (procfs_make_note_section): Assume there is always a thread.
+
+       * sol-thread.c (sol_thread_attach): Clear sol_thread_active before
+       attaching.  Change the main thread ptid with thread_change_ptid.
+       (sol_thread_detach): Clear sol_thread_active.
+       (sol_thread_wait): Check for exited threads.
+       (sol_thread_create_inferior): Clear sol_thread_active before
+       creating a new inferior.  Change the main thread ptid with
+       thread_change_ptid.
+       (sol_thread_mourn_inferior): Clear sol_thread_active.
+       (sol_find_new_threads_callback): Check for exited threads.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
+       LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
+       TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
+       process, and return TARGET_WAITKIND_IGNORE.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * inf-ttrace.c: Include <signal.h>
+       (inf_ttrace_delete_dead_threads_callback): New.
+       (inf_ttrace_resume_lwp): New.
+       (inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
+       delete dying threads until they are really dead.
+       (inf_ttrace_wait): After stopping the whole process, delete any
+       dying thread that is really dead by now.
+       (inf_ttrace_thread_alive): Return 1.
+       (inf_ttrace_extra_thread_info): New.
+       (inf_ttrace_target): Register inf_ttrace_extra_thread_info.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
+       of the child fork.
+       (inf_ttrace_attach): Add the main thread.
+       (inf_ttrace_resume_callback): Check for exited threads.  Adjust
+       for always a thread.
+       (inf_ttrace_wait): Decorate the main thread's ptid with lwp info
+       using thread_change_ptid, and set its private data.  Don't add the
+       main thread here.
+       (inf_ttrace_pid_to_str): Adjust.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
+       thread_change_ptid.  Check for exited threads.
+       (bsd_uthread_find_new_threads): Check for exited threads.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * inf-ptrace.c: Include "gdbthread.h".
+       (inf_ptrace_attach): Add the main thread here.
+       * linux-nat.c (linux_nat_attach): Don't add the main thread here.
+       Decorate the main thread id with the lwp id.
+
+2008-09-08  Pedro Alves  <pedro@codesourcery.com>
+
+       * linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
+       thread_change_ptid.  Don't add or mark the main thread as running
+       and executing here.
+       * fork-child.c (fork_inferior): Add the main thread here.
+
+2008-09-08  Jerome Guitton  <guitton@adacore.com>
+
+       * rs6000-tdep.c (rs6000_fetch_instruction)
+       (rs6000_skip_stack_check): New functions.
+       (skip_prologue): Skip stack check sequence.
+       
+2008-09-08  David Daney  <ddaney@avtrex.com>
+
+       * dummy-frame.h (frame.h): Include it.
+       (struct frame_id): Remove declaration.
+
+2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * spu-tdep.c (spu_push_dummy_code): New function.
+       (spu_gdbarch_init): Install it.
+
+2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
+       instead of paddr_nz.
+       * gdbarch.c: Regenerate.
+
+       * target.c (target_xfer_partial, debug_print_register): Use
+       core_addr_to_string_nz instead of paddr_nz.
+
 2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
This page took 0.037568 seconds and 4 git commands to generate.