2011-01-22 Geoffrey Garen <ggaren@apple.com>
authorggaren@apple.com <ggaren@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 23 Jan 2011 05:03:16 +0000 (05:03 +0000)
committerggaren@apple.com <ggaren@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 23 Jan 2011 05:03:16 +0000 (05:03 +0000)
commit7fc55f20cb5c2c85986f035521582b2727eb3f19
treef0f1ff50586885c876db23e3e6187a103438df41
parente48103dd1bb1005b6bfdcdcb70b11b75647b740e
2011-01-22  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Dan Bernstein.

        ASSERT running run-webkit-tests --threaded.
        https://bugs.webkit.org/show_bug.cgi?id=52971

        SunSpider and v8 report no change.

        * runtime/ConservativeSet.cpp:
        (JSC::ConservativeSet::grow):
        (JSC::ConservativeSet::add):
        * runtime/ConservativeSet.h: Tweaked the inline capacity to 128, and
        the growth policy to 2X, to make SunSpider and v8 happy.
        (JSC::ConservativeSet::ConservativeSet):
        (JSC::ConservativeSet::~ConservativeSet):
        (JSC::ConservativeSet::mark): Use OSAllocator directly, instead of malloc.
        Malloc is forbidden during a multi-threaded mark phase because it can
        cause deadlock.
2011-01-22  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Dan Bernstein.

        Beefed up --threaded mode to catch even more kinds of errors.
        https://bugs.webkit.org/show_bug.cgi?id=52971

        * DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp: Use a shared
        context group to force JSC to mark multiple threads. (This used to be
        the default, but it changed in SnowLeopard.)
        (runJavaScriptThread): Do more locking and unlocking, and more allocation,
        to give threading mistakes more chances to show themselves.
        (startJavaScriptThreads):
        (stopJavaScriptThreads):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76457 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/runtime/ConservativeSet.cpp
Source/JavaScriptCore/runtime/ConservativeSet.h
Tools/ChangeLog
Tools/DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp