aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.h
diff options
context:
space:
mode:
authorHui Zhu <teawater@gmail.com>2009-04-30 02:52:16 +0000
committerHui Zhu <teawater@gmail.com>2009-04-30 02:52:16 +0000
commit0508c3ec4d3efe99aa7edf201f81b34edb74a5ad (patch)
treef892adca86225685d10ce31dc5e15f42cd8c684c /gdb/gdbarch.h
parent96c23d596607cc7143e0ea1f4fee260977aec18b (diff)
downloadgdb-0508c3ec4d3efe99aa7edf201f81b34edb74a5ad.zip
gdb-0508c3ec4d3efe99aa7edf201f81b34edb74a5ad.tar.gz
gdb-0508c3ec4d3efe99aa7edf201f81b34edb74a5ad.tar.bz2
GDBARCH interface for process record and replay.
* gdbarch.sh (process_record): This interface point to the function that records the inferior execute log.
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r--gdb/gdbarch.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index 04c8920..5e508d7 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -807,6 +807,17 @@ extern void set_gdbarch_static_transform_name (struct gdbarch *gdbarch, gdbarch_
extern int gdbarch_sofun_address_maybe_missing (struct gdbarch *gdbarch);
extern void set_gdbarch_sofun_address_maybe_missing (struct gdbarch *gdbarch, int sofun_address_maybe_missing);
+/* Parse the instruction at ADDR storing in the record execution log
+ the registers REGCACHE and memory ranges that will be affected when
+ the instruction executes, along with their current values.
+ Return -1 if something goes wrong, 0 otherwise. */
+
+extern int gdbarch_process_record_p (struct gdbarch *gdbarch);
+
+typedef int (gdbarch_process_record_ftype) (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR addr);
+extern int gdbarch_process_record (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR addr);
+extern void set_gdbarch_process_record (struct gdbarch *gdbarch, gdbarch_process_record_ftype *process_record);
+
/* Signal translation: translate inferior's signal (host's) number into
GDB's representation. */