From: Brian Norris Date: Tue, 9 Oct 2012 01:59:26 +0000 (-0700) Subject: threads: allocate on user's snapshotting heap X-Git-Url: http://plrg.eecs.uci.edu/git/?p=c11tester.git;a=commitdiff_plain;h=9db4729d3e6ab5f3ec5fd8a2560d95026332fecf threads: allocate on user's snapshotting heap The following comment is included in threads.h to explain this choice: Intentionally NOT allocated with MODELALLOC or SNAPSHOTALLOC. Threads should be allocated on the user's normal (snapshotting) heap to allow their allocation/deallocation to follow the same pattern as the rest of the backtracked/replayed program. This fix solves problems seen in certain test programs regarding a Thread being allocated in different locations for different executions. --- diff --git a/threads.h b/threads.h index 9fecdfd3..91db236f 100644 --- a/threads.h +++ b/threads.h @@ -106,7 +106,12 @@ public: friend void thread_startup(); - SNAPSHOTALLOC + /** + * Intentionally NOT allocated with MODELALLOC or SNAPSHOTALLOC. + * Threads should be allocated on the user's normal (snapshotting) heap + * to allow their allocation/deallocation to follow the same pattern as + * the rest of the backtracked/replayed program. + */ private: int create_context(); Thread *parent;