Armin Rigo committed 1b92431

Move this comment.

Comments (0)

Files changed (1)


             change h_global False->True
             and h_written True->False
+Note that non-written local objects are just shadow copies of existing
+global objects.  For the sequel we just replace them with the original
+global objects again.  This is done by tweaking the local objects'
                 spin loop retry     # jump back to the "v = ..." line
             save v into the third item in gcroots, replacing the 0
-(Note that for non-written local objects, we skip this locking entirely;
-instead, we turn the object into a "global but outdated" object, keeping
-the same ``h_revision`` but with a different meaning.)
 We use CMPXCHG to store the lock.  This is required, because we must not
 conflict with another CPU that would try to write its own lock in the
 same field --- in that case, only one CPU can succeed.