X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=snapshot-interface.h;fp=snapshot-interface.h;h=b024e5a83a06300eb0e7a95aeee4f9f326765995;hb=260b391c9292c9eb48da1033bf4ac1c32ea49f87;hp=ecc60ec6453a9ca4991c92e27d248622a201b7c5;hpb=bb39508b2f65c261a703ad38cf16f6cdd590e67d;p=c11tester.git diff --git a/snapshot-interface.h b/snapshot-interface.h index ecc60ec6..b024e5a8 100644 --- a/snapshot-interface.h +++ b/snapshot-interface.h @@ -2,10 +2,8 @@ * @brief C++ layer on top of snapshotting system. */ - #ifndef __SNAPINTERFACE_H #define __SNAPINTERFACE_H -#include "mymemory.h" typedef unsigned int snapshot_id; @@ -14,26 +12,8 @@ void initSnapshotLibrary(unsigned int numbackingpages, unsigned int numsnapshots, unsigned int nummemoryregions, unsigned int numheappages, VoidFuncPtr entryPoint); -struct stackEntry { - struct stackEntry *next; - snapshot_id snapshotid; - int index; -}; - -class SnapshotStack { - public: - SnapshotStack(); - ~SnapshotStack(); - int backTrackBeforeStep(int seq_index); - void snapshotStep(int seq_index); - - MEMALLOC - private: - struct stackEntry *stack; -}; - -/* Not sure what it even means to have more than one snapshot object, - so let's just make a global reference to it.*/ +void snapshot_stack_init(); +void snapshot_record(int seq_index); +int snapshot_backtrack_before(int seq_index); -extern SnapshotStack *snapshotObject; #endif