cyclegraph: detect cycles immediately
authorBrian Norris <banorris@uci.edu>
Wed, 9 Jan 2013 23:26:47 +0000 (15:26 -0800)
committerBrian Norris <banorris@uci.edu>
Thu, 24 Jan 2013 20:29:10 +0000 (12:29 -0800)
commitdd1028f1a33deab855739112b3fc78663524455e
tree603d8352cb9486dcc6946b5bc5d4d13ebb5eafd4
parent7823790c1d16dc687bf4bb3d6e3c6de5eb9f6366
cyclegraph: detect cycles immediately

Previously, we have used a special case in CycleGraph to delay detection
of a mo-cycle (actually, an RMW atomicity violation) long enough so that
a RMW can "reorder" across another RMW by passing its future value.
Unfortunately, this only works some of the time, as the execution
*may or may not* be a feasible prefix which allows the sending of the
future value.

Instead, we need to pull this special case out of CycleGraph and (in
subsequent commits) will add a more proper solution in model.cc.
cyclegraph.cc