get rid of nodestack
memoize hb in writes
fix tabbing
More fuzzing changes
towards fuzzing only
remove old release sequences
Remove promises
try to add support for pthread_create/pthread_join
improve randomization
Add SCFence analysis
nodestack: localize the model-checker parameters
model: privatize ModelChecker::get_num_threads() The public interface is now in ModelExecution.
nodestack: register ModelExecution class w/in NodeStack
nodestack: move "behaviors" increment all into Node wrapper function
nodestack: regroup some code To put "threads backtracking" code together
fix memory leak when we reuse nodes in the nodestack, we will recreate yield information and leak the old array...
model, nodestack: bugfix - retain UNINIT actions across executions Previously, we were allocating UNINIT actions as snapshotting memory, just for ease of use. But because they may not immediately trigger a bug (if they are a valid read-from), such actions must have a longer lifetime - in fact, a lifetime similar to normal ModelActions. So, we stash them in NodeStack alongside normal actions. Also, improve a few ASSERT()'s and clarify a push_front() vs. push_back() (the list is empty, so it doesn't matter; but it follows the style of the rest of the lists to use push_front() here).
add yield support
nodestack: print thread status info in Node::print It's useful to have sleep-set information for debugging.
nodestack: add support functions for check_recency() w/ Promises