[Qt] GC should be parallel on Qt platform
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 26 Jan 2012 10:22:25 +0000 (10:22 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 26 Jan 2012 10:22:25 +0000 (10:22 +0000)
commit1de9501508fc91bbb48376f6775555973263a047
tree3968bfeb85ebf2992d948586570ccd269694e6b3
parentc00114a607274a9d4ff123ca1368b2a3885e58a5
[Qt] GC should be parallel on Qt platform
https://bugs.webkit.org/show_bug.cgi?id=73309

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-26
Reviewed by Zoltan Herczeg.

These changes made the parallel gc feature available for Qt port.
The implementation of "registerGCThread" and "isMainThreadOrGCThread"
is moved from MainThreadMac.mm to the common MainThread.cpp to make
them available for other platforms.

Measurement results:
V8           speed-up:  1.071x as fast  [From: 746.1ms  To: 696.4ms ]
WindScorpion speed-up:  1.082x as fast  [From: 3490.4ms To: 3226.7ms]
V8 Splay     speed-up:  1.158x as fast  [From: 145.8ms  To: 125.9ms ]

Tested on Intel(R) Core(TM) i5-2320 CPU @ 3.00GHz with 4-core.

* wtf/MainThread.cpp:
(WTF):
(WTF::registerGCThread):
(WTF::isMainThreadOrGCThread):
* wtf/Platform.h:
* wtf/mac/MainThreadMac.mm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/wtf/MainThread.cpp
Source/JavaScriptCore/wtf/Platform.h
Source/JavaScriptCore/wtf/mac/MainThreadMac.mm