projects
/
c11tester.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of /home/git/model-checker
[c11tester.git]
/
cyclegraph.h
diff --git
a/cyclegraph.h
b/cyclegraph.h
index 42866a3b370ceb52ab85967c1cfe0c80f4aedf6f..f0f04ffee0c3ca1f9cd3ef2edf46c2743e6c0515 100644
(file)
--- a/
cyclegraph.h
+++ b/
cyclegraph.h
@@
-11,6
+11,7
@@
#include "config.h"
#include "mymemory.h"
#include "config.h"
#include "mymemory.h"
+class Promise;
class CycleNode;
class ModelAction;
class CycleNode;
class ModelAction;
@@
-23,7
+24,7
@@
class CycleGraph {
bool checkForCycles();
bool checkForRMWViolation();
void addRMWEdge(const ModelAction *from, const ModelAction *rmw);
bool checkForCycles();
bool checkForRMWViolation();
void addRMWEdge(const ModelAction *from, const ModelAction *rmw);
-
+ bool checkPromise(const ModelAction *from, Promise *p);
bool checkReachable(const ModelAction *from, const ModelAction *to);
void startChanges();
void commitChanges();
bool checkReachable(const ModelAction *from, const ModelAction *to);
void startChanges();
void commitChanges();
@@
-36,6
+37,7
@@
class CycleGraph {
SNAPSHOTALLOC
private:
CycleNode * getNode(const ModelAction *);
SNAPSHOTALLOC
private:
CycleNode * getNode(const ModelAction *);
+ HashTable<CycleNode *, CycleNode *, uintptr_t, 4, model_malloc, model_calloc, model_free> * discovered;
/** @brief A table for mapping ModelActions to CycleNodes */
HashTable<const ModelAction *, CycleNode *, uintptr_t, 4> actionToNode;
/** @brief A table for mapping ModelActions to CycleNodes */
HashTable<const ModelAction *, CycleNode *, uintptr_t, 4> actionToNode;