Make GC checks more aggressive in release builds
https://bugs.webkit.org/show_bug.cgi?id=66001

Reviewed by Gavin Barraclough.

../../../../Volumes/Data/git/WebKit/OpenSource/Source/JavaScriptCore:

* heap/HandleHeap.cpp:
(JSC::HandleHeap::visitStrongHandles):
(JSC::HandleHeap::visitWeakHandles):
(JSC::HandleHeap::finalizeWeakHandles):
(JSC::HandleHeap::writeBarrier):
(JSC::HandleHeap::isLiveNode):
(JSC::HandleHeap::isValidWeakNode):
   Increase handle heap validation logic, and make some of
   the crashes trigger in release builds as well as debug.
* heap/HandleHeap.h:
(JSC::HandleHeap::allocate):
(JSC::HandleHeap::makeWeak):
   Ditto
* runtime/JSGlobalData.cpp:
(WTF::Recompiler::operator()):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::visitChildren):
   Fix GC bugs found while testing this patch

../../../../Volumes/Data/git/WebKit/OpenSource/Source/WebCore:

Fix GC bugs found while testing increased validation logic

* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::JSDOMWindowShell):
* bindings/js/JSDOMWindowShell.h:
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::createWindowShell):
* bridge/objc/ObjCRuntimeObject.h:
(JSC::Bindings::ObjCRuntimeObject::create):
* bridge/objc/ObjCRuntimeObject.mm:
(JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
* bridge/objc/objc_instance.mm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@92788 268f45cc-cd09-0410-ab3c-d52691b4dbfc
12 files changed