| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* record.c (record_wait): Set pc if forward execute,
gdbarch_decr_pc_after_break is not 0 and this is not single
step in replay mode.
* linux-nat.c (my_waitpid_record): Add
gdbarch_decr_pc_after_break to pc if need.
|
|
|
|
|
|
|
| |
* record.c (record_wait): Check breakpint before forward
execute in replay mode.
Check breakpoint use function "breakpoint_inserted_here_p"
in replay mode.
|
|
|
|
|
| |
* infrun.c (handle_inferior_event): Handle dynamic symbol
resolution in reverse.
|
|
|
|
|
| |
* infrun.c (adjust_pc_after_break): Do nothing if executing in
reverse.
|
|
|
|
|
| |
* infcmd.c (kill_if_already_running): Remove process record
warning code.
|
|
|
|
|
| |
* infrun.c (handle_inferior_event): Set "stop_pc" when
TARGET_WAITKIND_NO_HISTORY.
|
|
|
|
|
|
|
|
|
|
| |
* remote.c (remote_wait): Remove handling of "E6" no_history error.
2008-10-10 Michael Snyder <msnyder@vmware.com>
* remote.c (remote_wait): Recognize "replaylog" reply as part
of 'T' stop event (NO_HISTORY).
Declare "end of replay history" error reply as deprecated.
|
|
|
|
|
|
|
|
|
| |
Remove "to_support_record_wait".
* target.c (add_target): Remove "to_support_record_wait".
* target.h (target_ops): Ditto.
* linux-nat.c (linux_nat_add_target): Ditto.
* record.h (RECORD_TARGET_SUPPORT_RECORD_WAIT): This macro is removed.
|
|
|
|
|
|
|
|
|
| |
Change "record-auto-delete" to "record-stop-at-limit".
* record.c (record_insn_max_mode): Change to
"record_stop_at_limit".
(record_check_insn_num): Ditto.
(_initialize_record): Ditto.
|
|
|
|
|
| |
* reverse.c (exec_reverse_once): Eliminate fixed-size buffer,
use xstrprintf.
|
|
|
|
|
|
|
| |
* infcmd.c (finish_forward): New function, abstracted from
finish_command.
(finish_command): Abstract out finish_forward for symmetry.
* infrun.c (use_displaced_stepping): Add comment.
|
|
|
|
| |
* record.c (record_open): Reset after push_target.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* target.h (to_set_exec_direction, to_get_exec_direction): Remove.
(to_can_execute_reverse): New method.
(enum exec_direction_kind): Move to inferior.h.
* target.c (update_current_target): Inherit to_can_execute_reverse.
Remove to_set_exec_direction, to_get_exec_direction.
* inferior.h (enum exec_direction_kind): Move from target.h.
* infrun.c (set_exec_direction_func): Move here from reverse.c.
(show_exec_direction_func): Ditto.
(proceed): Consult global execution_direction instead of
target method.
(handle_inferior_event): Ditto.
* reverse.c (set_exec_direction_func): Move to infrun.c
(show_exec_direction_func): Ditto.
(exec_direction_default): Set infrun global variable.
(exec_reverse_once): Consult infrun global direction variable.
* infcmd.c (step_1): Consult infrun global direction variable.
(step_once): Ditto.
(until_next_command): Ditto.
(finish_command): Ditto.
* record.h (record_exec_direction): Delete.
(RECORD_IS_REPLAY): Consult infrun global direction variable.
* record.c: (record_wait_cleanups): Use infrun state variable.
(record_wait): Ditto.
(record_get_exec_direction, record_set_exec_direction): Remove.
(record_can_execute_reverse): New target method.
* remote.c (remote_resume): Use infrun state variable.
(remote_get_exec_direction, remote_set_exec_direction): Remove.
(remote_can_execute_reverse): New target method.
|
|
|
|
|
|
| |
* infrun.c (stepped_into_function): Rename handle_step_into_function.
(stepped_into_function_backward):
Rename handle_step_into_function_backward.
|
|
|
|
|
|
| |
* reverse.c: Update copyright.
(exec_reverse_once): Add function header comment.
(_initialize_reverse): Use i18n macros for set exec-direction.
|
|
|
|
|
|
|
| |
* i386-tdep.c, infrun.c, linux-record.c, linux-record.h,
record.c, record.h: Change name from
"record and reverse target" to
"process record and replay target".
|
| |
|
|
|
|
|
|
|
| |
* breakpoint.c (breakpoint_silence): Rename to make_breakpoint_silent.
* breakpoint.h: Ditto.
* infcmd.c (finish_backward): Call make_breakpoint_silent
instead of breakpoint_silence.
|
|
|
|
| |
* infcmd.c (finish_command): Reject async in reverse.
|
|
|
|
| |
* infcmd.c (finish_command): Use i18n macros.
|
|
|
|
| |
* infcmd.c: Minor function reordering.
|
|
|
|
|
|
|
| |
* infrun.c (step_into_function): Rename to stepped_into_function.
Split into two versions (normal (forward), and reverse).
(handle_inferior_event): Call stepped_into_function or
stepped_into_function_backward, depending on exec_direction.
|
|
|
|
| |
* infrun.c (handle_inferior_event): Comment rewording.
|
|
|
|
|
| |
* remote.c (remote_get_exec_direction): Use i18n macros.
(remote_set_exec_direction): Ditto.
|
|
|
|
| |
* infrun.c (handle_inferior_event, step_into_function): Formatting.
|
|
|
|
|
|
|
| |
* infrun.c (handle_inferior_event): Formatting, spelling fix.
* infrun.c (handle_inferior_event): Add special case for
"next" in reverse.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change from "to_prepare_to_store" to "to_store_registers".
* record.c (record_beneath_to_prepare_to_store): Removed.
(record_beneath_to_store_registers): New function pointer.
Instead "record_beneath_to_prepare_to_store". Will point
to the low strata target "to_store_registers" function.
(record_prepare_to_store): Removed.
(record_store_registers): New function.
Instead "record_prepare_to_store". Record the change of
registers from GDB.
(init_record_ops): Change record_prepare_to_store to
record_store_registers.
* record.h (record_beneath_to_prepare_to_store): Removed.
(record_beneath_to_store_registers): New extern.
(record_regcache_raw_write_regnum): Remove.
* target.c (update_current_target): Change
record_beneath_to_prepare_to_store to
record_beneath_to_store_registers.
|
|
|
|
|
|
|
| |
* infcmd.c (kill_if_already_running): If record target is used,
output special query.
* infrun.c (use_displaced_stepping): Return false if record/replay.
(proceed): Do not record state changes made by gdb in 'proceed'.
|
|
|
|
| |
* reverse.c (exec_reverse_once): Call do_cleanups explicitly.
|
|
|
|
| |
* infrun.c (handle_inferior_event): Fix typo in comment.
|
|
|
|
|
| |
* configure.tgt: Add linux-record.o here instead of in NATDEPFILES.
* config/i386/linux.mh: Remove linux-record.o from NATDEPFILES.
|
|
|
|
|
|
|
|
|
| |
* target.c, target.h: Rename execdir to exec_direction.
* record.c, record.h: Ditto.
* reverse.c: Ditto.
* remote.c: Ditto.
* reverse.c (show_exec_direction_func): Don't error, just inform.
|
|
|
|
|
| |
* reverse.c (reverse-continue): Remove a comma from docs string,
to avoid confusing output from 'apropos'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add process record and replay to i386 architecture.
* i386-linux-tdep.c (linux_record_tdep): New static variable.
I386 Linux record target-dependent stuff.
(i386_linux_intx80_sysenter_record): New function. Record the
running message of I386 Linux system call.
(i386_linux_init_ab): Initialize the linux_record_tdep. Add
i386_linux_intx80_sysenter_record to struct tdep.
* i386-tdep.c (i386_record_modrm, i386_record_lea_modrm_addr,
i386_record_lea_modrm, i386_record): New functions. Record the
running message of I386 instruction.
(i386_gdbarch_init): Add i386_record to struct gdbarch.
* i386-tdep.h (gdbarch_tdep): Add elements "i386_intx80_record"
and "i386_sysenter_record" to be the interfaces that record the
running message of instruction "intx80" and "sysenter".
* gdbarch.sh: Change process_record and process_record_dasm
to multi-arch model.
* gdbarch.c, gdbarch.h: Regenerate.
|
|
|
|
|
|
|
| |
Add process record and replay to Linux.
* linux-record.c, linux-record.h: New files.
* config/i386/linux.mh: Add linux-record.o to NATDEPFILES.
* Makefile.in: Add files linux-record.c, linux-record.o.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add process record and replay to GDB.
* record.c, record.h: New files. Record and reverse target.
* gdbarch.sh: New methods process_record and process_record_dasm.
* gdbarch.c, gdbarch.h: Re-generate.
* target.h (enum strata): Add record_stratum.
* target.h (target_ops): Add a element "to_support_record_wait".
Default value is 0. meaning that this target doesn't support record
wait.
* target.c: Add include of "record.h".
(update_current_target): Set the real beneath function.
(add_target): Set the default value of "to_support_record_wait".
pointers.
* Makefile.in: Add files record.c, record.o.
|
|
|
|
|
|
| |
User interface for reverse execution.
* Makefile.in (reverse.c): New file.
* reverse.c: New file. User interface for reverse execution.
|
|
|
|
|
|
|
| |
* breakpoint.h (breakpoint_silence): Export.
* breakpoint.c (breakpoint_silence): New function.
* infcmd.c (finish_command): Check for reverse exec direction.
(finish_backward): New function, handle finish cmd in reverse.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Event handling interface for reverse debugging.
* infrun.c (enum inferior_stop_reason): Add NO_HISTORY reason.
(handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
Handle stepping over a function call in reverse.
Handle stepping thru a line range in reverse.
Handle setting a step-resume breakpoint in reverse.
Handle stepping into a function in reverse.
Handle stepping between line ranges in reverse.
(print_stop_reason): Print reason for NO_HISTORY.
|
|
|
|
|
|
|
|
|
|
|
| |
Remote interface for reverse debugging.
* remote.c (remote_get_execdir, remote_set_execdir): New methods.
(remote_vcont_resume): Jump out if attempting reverse execution.
(remote_resume): Check for reverse exec direction, and send
appropriate command to target.
(remote_wait): Check target response for NO_HISTORY status.
Also check for empty reply (target doesn't understand "bs" or "bc).
(_initialize_remote): Add new methods to remote target vector.
|
|
|
|
|
|
|
|
|
|
| |
Target interface for reverse debugging.
* target.h (enum target_waitkind):
Add new wait event, TARGET_WAITKIND_NO_HISTORY.
(enum exec_direction_kind): New enum.
(struct target_ops): New methods to_set_execdir, to_get_execdir.
* target.c (target_get_execdir): New generic method.
(target_set_execdir): Ditto.
|
|
|
|
| |
moduli >= 2**31.
|
|
|
|
|
|
|
|
|
|
| |
variant branch.
(empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
supposed to be null. Fixes debugger segfaults.
(is_unchecked_variant): New function.
(to_fixed_variant_branch_type): Modify to leave unchecked unions
untouched.
(ada_template_to_fixed_record_type_1): Fix comment.
|
|
|
|
|
| |
(ada_exception_catchpoint_cond_string): Add special handling
for the predefined exceptions.
|
|
|
|
| |
the code accordingly.
|
|
|
|
|
| |
treatment of expect_type. Return the correct type when dereferencing
an integer.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR gdb/2484:
* symtab.c (struct add_macro_name_data): New struct.
(add_macro_name): New function.
(default_make_symbol_completion_list): Complete macro names.
* scm-lang.c (scm_language_defn): Update.
* p-lang.c (pascal_language_defn): Update.
* objc-lang.c (objc_language_defn): Update.
* macrotab.h (macro_callback_fn): Add user_data argument.
(macro_for_each): Likewise.
(macro_for_each_in_scope): Declare.
* macrotab.c: (struct macro_for_each_data): New struct.
(foreach_macro): Use it.
(macro_for_each): Likewise.
(foreach_macro_in_scope): New function.
(macro_for_each_in_scope): Likewise.
* macrocmd.c (print_one_macro): Add argument.
(macro_list_command): Pass NULL to macro_for_each.
* m2-lang.c (m2_language_defn): Update.
* language.h (struct language_defn) <la_macro_expansion>: New
field.
(macro_expansion): New enum.
* language.c (unknown_language_defn): Update. Fix order of
initializers.
(auto_language_defn): Likewise.
(local_language_defn): Update.
* jv-lang.c (java_language_defn): Update.
* f-lang.c (f_language_defn): Update.
* c-lang.c (c_language_defn): Update.
(cplus_language_defn): Likewise.
(asm_language_defn): Likewise.
(minimal_language_defn): Likewise.
* ada-lang.c (ada_language_defn): Update.
gdb/testsuite
* gdb.base/macscp.exp: Add completion tests.
* gdb.base/macscp1.c (FIFTY_SEVEN): New macro.
(TWENTY_THREE): Likewise.
(FORTY_EIGHT): Likewise.
|
|
|
|
| |
(get_scope_pc_bounds): Use it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* NEWS: Update.
* macrocmd.c (extract_identifier): Add is_parameter argument.
(macro_define_command): Update.
(macro_undef_command): Likewise.
* macroexp.c (stringify): New function.
(find_parameter): Likewise.
(gather_arguments): Add nargs argument. Handle varargs.
(substitute_args): Add is_varargs and va_arg_name arguments.
Handle varargs, splicing, stringification. Use find_parameter.
(expand): Handle varargs.
gdb/doc
* gdb.texinfo (Macros): Remove text about stringification,
varargs, and splicing.
gdb/testsuite
* gdb.base/macscp.exp: Add tests for stringification, splicing,
and varargs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* scm-lang.c (scm_language_defn): Update.
* p-typeprint.c (pascal_print_typedef): New function.
* p-lang.h: (pascal_print_typedef): Declare.
* p-lang.c (pascal_language_defn): Update.
* objc-lang.c (objc_language_defn): Update.
* m2-typeprint.c (m2_print_typedef): New function.
* m2-lang.h (m2_print_typedef): Declare.
* m2-lang.c (m2_language_defn): Update.
* language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
Remove.
(struct language_defn) <la_print_typedef>: New field.
(default_print_typedef): Declare.
(LA_PRINT_TYPEDEF): New define.
* language.c (unknown_language_defn): Update.
(auto_language_defn): Update.
(local_language_defn): Update.
* jv-lang.c (java_language_defn): Update.
* f-lang.c (f_language_defn): Update.
* c-typeprint.c (c_print_typedef): New function.
* c-lang.h (c_print_typedef): Declare.
* c-lang.c (c_language_defn): Update.
(cplus_language_defn): Update.
(asm_language_defn): Update.
(minimal_language_defn): Update.
* ada-lang.c (ada_language_defn): Update.
* typeprint.c (default_print_typedef): New function.
gdb/doc
* gdbint.texinfo (Language Support): Remove text about omitting
support for a language.
|