It is necessary to call this in the constructor of many objects in JavaScriptCore, because JavaScriptCore objects may be used from multiple threads even if the reference counting is done in a racy manner. This is because a JSC instance may be used from multiple threads so long as all accesses into that instance are protected by a per-instance lock. It would be absolutely wrong to prohibit this pattern, and it would be a disastrous regression to requite that the objects within that instance use a thread-safe version of reference counting. Hence the notion that this method should be deprecated is entirely misguided until a credible, low-overhead verifier is implemented, which can understand JavaScriptCore's well-designed thread safety patterns while also not created confusing noise in our code base.
Created attachment 129390 [details] the patch
Landed in http://trac.webkit.org/changeset/109268