Merge branch 'fences'
[model-checker.git] / action.cc
index 72ca472657e79f370773aae58c414fe645b0890d..d5eb581a23d4e7ec5b7ffe3aefeff54fb263ae94 100644 (file)
--- a/action.cc
+++ b/action.cc
@@ -299,15 +299,13 @@ bool ModelAction::could_synchronize_with(const ModelAction *act) const
        if (!same_var(act))
                return false;
 
-       // Explore interleavings of seqcst writes/fences to guarantee total
+       // Explore interleavings of seqcst writes to guarantee total
        // order of seq_cst operations that don't commute
-       if ((could_be_write() || act->could_be_write() || is_fence() || act->is_fence())
-                       && is_seqcst() && act->is_seqcst())
+       if ((could_be_write() || act->could_be_write()) && is_seqcst() && act->is_seqcst())
                return true;
 
-       // Explore synchronizing read/write/fence pairs
-       if (is_acquire() && act->is_release() && (is_read() || is_fence()) &&
-                       (act->could_be_write() || act->is_fence()))
+       // Explore synchronizing read/write pairs
+       if (is_acquire() && act->is_release() && is_read() && act->could_be_write())
                return true;
 
        // lock just released...we can grab lock