aboutsummaryrefslogtreecommitdiff
path: root/gdb/ChangeLog
AgeCommit message (Collapse)AuthorFilesLines
2008-07-22 Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.Stan Shebs1-0/+13
* gdbarch.sh: Adjust comment to refer to in_solib_dynsym_resolve_code(). * gdbarch.h, gdbarch.c: Update. * solib-osf.c: Ditto. * infrun.c: Ditto. (handle_inferior_event): Use in_solib_dynsym_resolve_code unconditionally. * config/mips/nm-irix5.h: Remove undef of IN_SOLIB_DYNSYM_RESOLVE_CODE. * gdbint.texinfo: Refer to target_so_ops.in_dynsym_resolve_code instead of IN_SOLIB_DYNSYM_RESOLVE_CODE.
2008-07-21gdbTom Tromey1-0/+8
* symfile.c (reread_symbols): Don't pass argument to observer. * exec.c (exec_file_attach): Don't pass argument to observer. * ada-lang.c (ada_executable_changed_observer): Remove argument. * symtab.c (symtab_observer_executable_changed): Remove argument. * observer.sh: Handle functions with no arguments. gdb/doc * observer.texi (GDB Observers): Remove obsolete comment. <executable_changed>: Remove argument.
2008-07-212008-07-20 Sergei Poselenov <sposelenov@emcraft.com>Chris Demetriou1-0/+7
Chris Demetriou <cgd@google.com> * elfread.c (elf_symfile_segments): Fix the check that each loadable section fits within an ELF segment to handle ELF segments that hit the end of the address space.
2008-07-202008-07-20 Chris Demetriou <cgd@google.com>Chris Demetriou1-0/+4
* MAINTAINERS (Write After Approval): Add self.
2008-07-18gdbTom Tromey1-0/+44
PR gdb/855: * NEWS: Add entry for macro commands. * Makefile.in (macrocmd.o): Add gdb_string.h. * macroscope.h (user_macro_scope): Declare. (default_macro_scope): Update documentation. (macro_user_macros): Declare. * c-lang.c (c_preprocess_and_parse): Always attempt macro lookup. Use user_macro_scope. (null_macro_lookup): Remove. * macrotab.h (macro_callback_fn): Declare. (macro_for_each): Likewise. (macro_allow_redefinitions): Likewise. * macrotab.c (foreach_macro): New function (macro_for_each): Likewise. (struct macro_table) <redef_ok>: New field. (macro_allow_redefinitions): New function. (new_macro_table): Update. (macro_define_function): Likewise. (macro_define_object): Likewise. * macroscope.c (user_macro_scope): New function. (default_macro_scope): Use it. (macro_user_macros): New global. (standard_macro_lookup): Look in macro_user_macros. (_initialize_macroscope): New function. * macroexp.h (macro_is_whitespace, macro_is_digit, macro_is_identifier_nondigit): Declare. * macroexp.c (macro_is_whitespace): Rename. No longer static. (macro_is_digit): Likewise. (macro_is_identifier_nondigit): Likewise. (get_identifier): Update. (get_pp_number): Likewise. (get_token): Likewise. * macrocmd.c (skip_ws): New function. (extract_identifier): Likewise. (free_macro_definition_ptr): Likewise. (user_macros): Remove. (macro_define_command): Implement. (_initialize_macrocmd): Update. (macro_undef_command): Implement. (print_one_macro): New function. (macro_list_command): Implement. gdb/doc * gdb.texinfo (Macros): Update. Use @code rather than @command. gdb/testsuite * gdb.base/macscp.exp: Add macro tests.
2008-07-18 * configure.ac: Put old value of $LIBS after -lbfd -liberty $intlJoseph Myers1-0/+6
in BFD ELF check. * configure: Regenerate.
2008-07-17Fix for failing gdb.base/auxv.exp on LinuxPaul Pluzhnikov1-0/+4
2008-07-15Revert frame_unwind_caller_pc / frame_unwind_caller_id.Daniel Jacobowitz1-15/+0
2008-07-15* valops.c (value_cast_pointers): Follow typedefs when checkingAndreas Schwab1-396/+401
result of coercion.
2008-07-15 * block.c (block_function): Renamed to ...Daniel Jacobowitz1-0/+7
(block_linkage_function): ... this. All callers changed. * block.h (block_function): Renamed to ... (block_linkage_function): ... this.
2008-07-15 * frame.c (frame_unwind_id): Renamed to ...Daniel Jacobowitz1-0/+15
(frame_unwind_caller_id): ... this. All callers updated. (frame_pc_unwind): Renamed to ... (frame_unwind_caller_pc): ... this. All callers updated. * frame.h: Document frame_unwind_caller_WHAT functions. (frame_unwind_id): Renamed to ... (frame_unwind_caller_id): ... this. (frame_pc_unwind): Renamed to ... (frame_unwind_caller_pc): ... this. * hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment. * stack.c (parse_frame_specification_1): Do not rely on frame_unwind_id.
2008-07-15 * mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.Daniel Jacobowitz1-0/+4
2008-07-15 * frame.c (frame_sp_unwind): Delete.Daniel Jacobowitz1-0/+6
(get_frame_sp): Do not use it. * frame.h (frame_sp_unwind): Delete prototype.
2008-07-15 * ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.Daniel Jacobowitz1-0/+4
2008-07-15* dwarf2-frame.c (dwarf2_frame_cache): Update comment.Daniel Jacobowitz1-0/+10
* frame.c (frame_unwind_address_in_block): Delete. (get_frame_address_in_block): Do not use it. Check the type of the next frame first. (frame_cleanup_after_sniffer): Update comment. * frame.h (frame_unwind_address_in_block): Delete prototype. * hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
2008-07-15* frame.c (frame_func_unwind): Delete.Daniel Jacobowitz1-0/+8
(get_frame_func): Do not use it. * frame.h (frame_func_unwind): Delete prototype. * hppa-tdep.c (hppa_frame_cache): Update comment. * rs6000-tdep.c (rs6000_frame_cache): Update comment.
2008-07-15 * remote-sim.c (init_gdbsim_ops): RemoveStan Shebs1-0/+5
TARGET_REDEFINE_DEFAULT_OPS.
2008-07-15 * findvar.c (read_var_value): Remove unused variable.Daniel Jacobowitz1-0/+4
2008-07-15 * infrun.c (handle_inferior_event): Tag threads as stoppedLuis Machado1-0/+5
before inserting breakpoints.
2008-07-15* MAINTAINERS: Added myself to section Write After Approval.Hui Zhu1-0/+4
2008-07-14Fix for PR gdb/2477Paul Pluzhnikov1-0/+5
2008-07-14 * i386-dicos-tdep.c (i386_dicos_frame_align): Delete.Pedro Alves1-0/+7
(i386_dicos_push_dummy_code): New. (i386_dicos_init_abi): Don't register i386_dicos_frame_align. Register i386_dicos_push_dummy_code.
2008-07-14 * mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.Markus Deuling1-0/+57
(mips_n32n64_push_dummy_call, mips_o64_return_value) (mips_eabi_push_dummy_call): Update call to fp_register_arg_p. (MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch. (fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command) (mips_n32n64_fp_arg_chunk_p): Update caller. (mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter. (mips_n32n64_push_dummy_call): Update caller. (MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace current_gdbarch. (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call) (mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller. (MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace current_gdbarch. (mips_eabi_push_dummy_call, mips_o32_push_dummy_call) (mips_o64_push_dummy_call): Update caller. (MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch. (fp_register_arg_p, mips_dump_tdep): Update caller. (set_reg_offset): Add gdbarch as parameter and replace current_gdbarch. (mips16_scan_prologue, mips32_scan_prologue): Update caller. (reset_saved_regs): Make static. Add gdbarch as parameter. Replace current_gdbarch. (mips32_scan_prologue): Update caller. (heuristic_proc_start): Add gdbarch as parameter. Replace current_gdbarch. (mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller. * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers) (mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at the current architecture. Update call to getregs_supplies. (getregs_supplies): Add gdbarch as parameter and replace current_gdbarch. * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and NBSD_MIPS_JB_ELEMENT_SIZE. (NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and replace current_gdbarch. * remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace current_gdbarch. (mips_fetch_registers, mips_store_registers): Update call to mips_map_regno. (mips_load): Use get_regcache_arch to get at the current_architecture and replace current_gdbarch.
2008-07-13 * thread.c (restore_selected_frame): On fail to restore, selectPedro Alves1-0/+5
the innermost frame, and don't crash when warning the user.
2008-07-13 * symtab.c (expand_line_sal): Fix a memory leak.Joel Brobecker1-0/+4
2008-07-13 * utils.c (struct continuation): Define as inheriting structPedro Alves1-0/+9
cleanup. (add_continuation, do_all_continuations) (discard_all_continuations, add_intermediate_continuation) (do_all_intermediate_continuations) (discard_all_intermediate_continuations): Adjust.
2008-07-13 Skip varobj in running threads.Vladimir Prus1-0/+7
* mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's thread is not stopped, skip the varobj. * Makefile.in: Update dependencies.
2008-07-13 Enable all MI commands while inferiour is runningVladimir Prus1-0/+6
* mi/mi-main.c (mi_cmd_execute): Don't check if inferiour is executing.
2008-07-13 Allow all CLI command even if target is executing.Vladimir Prus1-0/+6
* gdb/top.c (execute_command_1): Don't check if the inferiour is running.
2008-07-13 * mi/mi-main.c (mi_cmd_execute): Remove unused variable.Vladimir Prus1-0/+5
Fix printing of frame, when frame is wrong.
2008-07-12 * spu-tdep.c (spu_frame_unwind_cache): Do not error ifUlrich Weigand1-0/+5
backchain is unreadable.
2008-07-12 * spu-linux-nat.c: Include "gdbthread.h".Ulrich Weigand1-0/+7
(spu_child_post_startup_inferior): Register main thread. (spu_child_post_attach): Likewise. * Makefile.in (spu-linux-nat.o): Update dependencies.
2008-07-122008-07-12 Pedro Alves <pedro@codesourcery.com>Pedro Alves1-0/+51
Rewrite continuations internals on top of cleanups and plug continuation arguments leaks. * defs.h (struct continuation): Make it opaque. (add_continuation, add_intermediate_continuation): Drop the int argument of the continuation hook argument. Add continuation_free_args argument. (do_all_continuations, do_all_intermediate_continuations): Drop the error_p argument. * utils.c (add_continuation): Drop the int argument of the continuation hook argument. Add continuation_free_args argument. Reimplement on top of cleanups. (do_all_continuations): Drop error argument. Reimplement on top of cleanups. (discard_all_continuations): Reimplement on top of cleanups. (add_intermediate_continuation): Drop the int argument of the continuation hook argument. Add continuation_free_args argument. Reimplement on top of cleanups. (do_all_intermediate_continuations): Drop error argument. Reimplement on top of cleanups. (discard_all_intermediate_continuations): Reimplement on top of cleanups. * breakpoint.c (until_break_command_continuation): Drop error argument. Add xfree as continuation argument deleter. * inf-loop.c (inferior_event_handler): On error, discard all continuations. Adjust to new do_all_intermediate_continuations and do_all_continuations interfaces. * infcmd.c (step_1_continuation): Drop error_p argument. Adjust. Pass xfree as continuation argument deleter. (finish_command_continuation): Drop error_p argument. Adjust. (finish_command_continuation_free_arg): New. (finish_command): Pass finish_command_continuation_free_arg as continuation argument deleter. Adjust to new do_all_continuations interfaces. (attach_command_continuation): Drop error_p argument. (attach_command_continuation_free_args): New. (attach_command): Pass attach_command_continuation_free_args as continuation argument deleter. * interps.c (interp_set): Adjust to new do_all_continuations interfaces. * event-top.c (stdin_event_handler): In error, also discard the intermediate continuations.
2008-07-12 Replace struct continuation_args by void* and per command structs.Pedro Alves1-0/+45
* top.c (execute_command): Remove unused arg1 and arg2 locals. * breakpoint.c (struct until_break_command_continuation_args): New. (until_break_command_continuation): Take a void* instead of a continuations_arg. Adjust. (until_break_command): Adjust to use struct until_break_command_continuation_args instead of struct continuation_arg. * infcmd.c (struct step_1_continuation_args): New. (step_1_continuation): Take a void* instead of a continuations_arg. Adjust to use struct step_1_continuation_args. (step_once): Adjust to use struct step_1_continuation_args. (struct finish_command_continuation_args): New. (finish_command_continuation): Take a void* instead of a continuations_arg. Adjust to use struct finish_command_continuation_args. (finish_command): Adjust to use struct finish_command_continuation_args. (struct attach_command_continuation_args): New. (attach_command_continuation): Take a void* instead of a continuations_arg. Adjust to use struct attach_command_continuation_args. (attach_command): Adjust to use struct attach_command_continuation_args. * defs.h (struct continuation_arg): Delete. (struct continuation): Replace the struct continuation_arg* parameter of continuation_hook by a void*. Replace "arg_list" member by a new "args" member with void* type. (add_continuation, add_intermediate_continuation): Replace struct continuation_arg type usages by void* usages. * utils.c (add_continuation, do_all_continuations) (add_intermediate_continuation) (do_all_intermediate_continuations): Replace struct continuation_arg type usages by void* usages. Pass "args" instead of "arg_list".
2008-07-122008-07-12 Pedro Alves <pedro@codesourcery.com>Pedro Alves1-0/+10
* infrun.c (struct thread_stepping_state): Delete sal member. (init_thread_stepping_state): Add local sal. Use it instead of tss->sal. (handle_inferior_event): New local stop_pc_sal. Use it instead of tss->sal. (step_into_function): Add local stop_func_sal. Use it instead of tss->sal.
2008-07-12 Implement -exec-continue/-exec-interrupt --all.Vladimir Prus1-0/+11
* infcmd.c (continue_1): New, extracted from (continue_command): ...here. (interrupt_target_1): New, extracted from (interrupt_target_command): ...here. * inferior.h (continue_1, interrupt_target_1): New. * mi/mi-main.c (mi_cmd_exec_continue) (mi_cmd_exec_interrupt): Handle --all.
2008-07-12 Implement --thread and --frame.Vladimir Prus1-0/+10
* gdbthread.h (find_thread_id): Declare. * thread.c (find_thread_id): Make non-static. * mi/mi-main.c (mi_cmd_execute): Switch to the right thread and frame, if necessary. * mi/mi-parse.c (mi_parse): Handle --thread and --frame. * mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
2008-07-12 * infrun.c (resume): Discard cleanups on early exit path.Vladimir Prus1-0/+4
2008-07-12 * infrun.c (normal_stop): For MI, report which threadsVladimir Prus1-0/+5
were stopped.
2008-07-12 Report thread state in -thread-info output.Vladimir Prus1-0/+5
* thread.c (print_thread_info): Add new field "state".
2008-07-11 * infrun.c (handle_inferior_event): Also ignore aPedro Alves1-0/+5
TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
2008-07-11gdbTom Tromey1-0/+7
* completer.c (complete_line_internal): New function, from complete_line. Add 'for_help' parameter. (complete_line): Use it. (command_completer): Move later. Rewrite. gdb/testsuite * gdb.base/completion.exp: Add 'help' completion test.
2008-07-11 * thread.c (thread_apply_command): Move making the cleanup out ofPedro Alves1-0/+5
the loop.
2008-07-11 Exited threads.Pedro Alves1-0/+82
* thread.c (enum thread_state): New. (thread_state main_thread_running): Delete, in favor of... (thread_state main_thread_state): ... this. Update throughout. (clear_thread_inferior_resources): New, split from free_thread. (free_thread): Call clear_thread_inferior_resources. (init_thread_list): Set main thread to stopped state. (add_thread_silent): Take care of PTID reuses. (delete_thread): If deleting inferior_ptid or a thread with refcount > 0, mark it as exited, but still keep it in the list. Only notify of thread exits, if we haven't done so yet. (iterate_over_threads): Make it safe to delete threads while iterating over them. (do_captured_list_thread_ids): Don't account for exited threads. (thread_alive): Check for the THREAD_EXITED state, and don't set ptid to -1 on exited threads. (set_running): Update to account for extra possible states. (is_thread_state): New. (is_stopped, is_exited): New. (is_running): Implement in terms of is_thread_state. (any_running): Update. (print_thread_info): Update. Account for exited threads. Don't warn about missed frame restoring here, its done in the cleanup. (switch_to_thread): Don't read from a thread that has gone. (restore_current_thread): In non-stop mode, do a full context switch. (restore_selected_frame): Add a frame_level argument. Rewrite. (struct current_thread_cleanup): Add selected_frame_level and was_stopped members. (do_restore_current_thread_cleanup): Check if thread was stopped and still is, and if the target has registers, stack and memory before restoring the selected frame. Don't delete the cleanup argument here. (restore_current_thread_cleanup_dtor): New. (make_cleanup_restore_current_thread): Remove all arguments. Rewrite. (thread_apply_all_command): Update. Prune threads. (thread_apply_command): Update. (thread_command): Account for currently selected exited thread. (do_captured_thread_select): Check for a running thread. Prune threads. (_initialize_thread): Make "info threads", "thread", "thread apply", and "thread apply all" appliable without a selected thread. * gdbthread.h (struct thread_info): Replace running_ by state_. Add refcount. (is_exited, is_stopped): Declare. (make_cleanup_restore_current_thread): Remove all arguments. * infrun.c: Include "event-top.h". (fetch_inferior_event): In non-stop mode, restore selected thread and frame after handling the event and running breakpoint commands. Display GDB prompt if needed. (normal_stop): In non-stop mode, don't print thread switching notice. * cli/cli-decode.c (set_cmd_no_selected_thread_ok) (get_cmd_no_selected_thread_ok): New. * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New. (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok): Declare. * cli/cli-cmds.c: Set "pwd", "help", "info", "show" as no-selected-thread ok. * top.c (execute_command): Check for non no-selected-thread-ok commands. * linux-nat.c (struct saved_ptids, threads_to_delete) (record_dead_thread, prune_lwps): Delete. (exit_lwp): Unconditionally delete thread. (linux_nat_resume): Remove prune_lwps call. * infcmd.c (proceed_thread_callback): Check if !is_stopped instead of is_running. Adjust to make_cleanup_restore_current_thread interface change. * mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the selected thread has exited. * inf-loop.c (inferior_event_handler): Don't display the prompt here. * varobj.c (c_value_of_root): Update. * defs.h (make_cleanup_dtor): Declare. * utils.c (make_cleanup_dtor): New. * Makefile.in (infrun.o): Depend on $(event_top_h).
2008-07-11 Add "continue -a" and "interrupt -a" options for non-stop mode.Pedro Alves1-0/+10
* infcmd.c (proceed_thread_callback, do_context_switch_to): New. (continue_command): Add "-a" option. (interrupt_target_command): Add "-a" option. (_initialize_infcmd): Add extend help of continue and interrupt command to mention the new "-a" option. Mark "continue" async ok.
2008-07-10 Add "set print symbol-loading on|off".Doug Evans1-0/+12
* NEWS: Document new option. * symfile.h (print_symbol_loading): Declare. * symfile.c (print_symbol_loading): New global. (symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols from ..." if print_symbol_loading. (_initialize_symfile): Add set/show print symbol-loading. * solib.c (solib_read_symbols): Only print "Loaded symbols for ..." if print_symbol_loading. * doc/gdb.texinfo: Document "set print symbol-loading on|off".
2008-07-10 Non-stop linux native.Pedro Alves1-0/+39
* linux-nat.c (linux_test_for_tracefork): Block events while we're here. (get_pending_status): Implement non-stop mode. (linux_nat_detach): Stop threads before detaching. (linux_nat_resume): In non-stop mode, always resume only a single PTID. (linux_handle_extended_wait): On a clone event, in non-stop mode, add new lwp to GDB's thread table, and mark as running, executing and stopped appropriately. (linux_nat_filter_event): Don't assume there are other running threads when a thread exits. (linux_nat_wait): Mark the main thread as running and executing. In non-stop mode, don't stop all lwps. (linux_nat_kill): Stop lwps before killing them. (linux_nat_thread_alive): Use signal 0 to detect if a thread is alive. (send_sigint_callback): New. (linux_nat_stop): New. (linux_nat_add_target): Set to_stop to linux_nat_stop. * linux-nat.h (thread_db_attach_lwp): Declare. * linux-thread-db.c (thread_get_info_callback): Check for new threads if we have none. (thread_from_lwp, enable_thread_event): Set proc_handle.pid to the stopped lwp. Check for new threads if we have none. (thread_db_attach_lwp): New. (thread_db_init): Set proc_handle.pid to inferior_ptid. (check_event): Set proc_handle.pid to the stopped lwp. (thread_db_find_new_threads): Set proc_handle.pid to any stopped lwp available, bail out if there is none. * linux-fork.c (linux_fork_killall): Use SIGKILL instead of PTRACE_KILL.
2008-07-10 * rs6000-tdep.c (ppc_displaced_step_fixup): Change type ofKevin Buettner1-0/+3
`current_pc' from CORE_ADDR to ULONGEST.
2008-07-10 * remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid toKevin Buettner1-0/+5
gdbsim_stop().
2008-07-10gdb/Jan Kratochvil1-0/+17
* NEWS (New commands): Mention "set disable-randomization". * configure.ac: Add check for HAVE_PERSONALITY and HAVE_DECL_ADDR_NO_RANDOMIZE. * configure, config.in: Regenerate. * linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>. [HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set ADDR_NO_RANDOMIZE. (disable_randomization, show_disable_randomization) (set_disable_randomization): New. (linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables PERSONALITY_ORIG and PERSONALITY_SET. Disable randomization upon the variable DISABLE_RANDOMIZATION. (_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable DISABLE_RANDOMIZATION. gdb/doc/ * gdb.texinfo (Starting): Document "set disable-randomization". gdb/testsuite/ * gdb.base/randomize.exp, gdb.base/randomize.c: New files.