model: bugfix - correct the "equality" check for RR coherence
authorBrian Norris <banorris@uci.edu>
Wed, 27 Feb 2013 23:42:17 +0000 (15:42 -0800)
committerBrian Norris <banorris@uci.edu>
Wed, 27 Feb 2013 23:44:20 +0000 (15:44 -0800)
I made a typo when adding this RR coherence edge.

model.cc

index bfb63e48ddd5d0d9ac0bc096b3604d3e6d9e640d..152e36ec2f296fc9f467b890e2e89d6ada3504ee 100644 (file)
--- a/model.cc
+++ b/model.cc
@@ -1770,7 +1770,7 @@ bool ModelChecker::r_modification_order(ModelAction *curr, const rf_type *rf)
                                        if (prevrf) {
                                                if (!prevrf->equals(rf))
                                                        added = mo_graph->addEdge(prevrf, rf) || added;
                                        if (prevrf) {
                                                if (!prevrf->equals(rf))
                                                        added = mo_graph->addEdge(prevrf, rf) || added;
-                                       } else if (!prevrf->equals(rf)) {
+                                       } else if (!prevrf_promise->equals(rf)) {
                                                added = mo_graph->addEdge(prevrf_promise, rf) || added;
                                        }
                                }
                                                added = mo_graph->addEdge(prevrf_promise, rf) || added;
                                        }
                                }