From: Brian Norris Date: Wed, 20 Feb 2013 02:28:41 +0000 (-0800) Subject: model: schedule appropriate fence backtracking points X-Git-Url: http://plrg.eecs.uci.edu/git/?p=c11tester.git;a=commitdiff_plain;h=5fa2efec1354b2781ff0b29460ec8e9b8fa75991;hp=5fa2efec1354b2781ff0b29460ec8e9b8fa75991 model: schedule appropriate fence backtracking points This patch calculates the most recent backtracking point which may be a fence. We require a separate function for computing this because a fence "conflict" is much different than other conflicts; fences do not have a memory location, but instead, they trigger release/acquire backtracking in the presence of other stores/loads. Left out of this patch: (1) Sleep-set waking: even if we backtrack, we don't yet wake up our thread properly, yielding a "redundant" trace instead of a productive one (2) memory_order_seq_cst: I have yet to determine how (if at all) we need to add additional backtracking in the presence of seq_cst fences (3) documentation: need to describe get_last_fence_conflict() better ---