Removed RegisterFile::markGlobals because it was obtuse, and it unnecessarily relied on conservative marking.
Created attachment 79334 [details] Patch
Comment on attachment 79334 [details] Patch Wow, this really does seem much better.
Committed r76078: <http://trac.webkit.org/changeset/76078>
Reverted r76078 for reason: Caused WebGL and possibly other layout test crashes in Release mode Committed r76100: <http://trac.webkit.org/changeset/76100>
I apologize, but I had to roll out this change. It was causing random layout test crashes. The WebGL tests fast/canvas/webgl/constants.html and fast/canvas/webgl/gl-enum-tests.html seemed to be the most affected and crashed 100% of the time on my Snow Leopard machine in Release mode with "run-webkit-tests fast/canvas/webgl". I barely caught this before the revision scrolled off the bottom of the build.webkit.org console. Here are the top few frames from DumpRenderTree in gdb when the crash occurred. Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_PROTECTION_FAILURE at address: 0x00000001006ffdc0 0x0000000100226aad in JSC::CollectorBitmap::getset () at /Users/kbr/src/chrome2/src/third_party/WebKit/Source/JavaScriptCore/runtime/MarkedSpace.h:148 #1 0x0000000100226aad in JSC::CollectorBitmap::getset () at /Users/kbr/src/chrome2/src/third_party/WebKit/Source/JavaScriptCore/runtime/MarkedSpace.h:148 #2 0x0000000100226aad in JSC::CollectorBitmap::getset () at /Users/kbr/src/chrome2/src/third_party/WebKit/Source/JavaScriptCore/runtime/MarkedSpace.h:148 #3 0x0000000100226aad in JSC::MachineStackMarker::markCurrentThreadConservativelyInternal (this=<value temporarily unavailable, due to optimizations>, markStack=@0x10dfaca80) at /Users/kbr/src/chrome2/src/third_party/WebKit/Source/JavaScriptCore/runtime/MachineStackMarker.cpp:200
Strange -- the EWS bots seemed OK with the patch. Anyway, thanks for rolling this out, Kenneth. I'll take another look.
Committed revision 76193: <http://trac.webkit.org/changeset/76193>