Value profiling should just use two buckets
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 6 Nov 2011 11:54:59 +0000 (11:54 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 6 Nov 2011 11:54:59 +0000 (11:54 +0000)
https://bugs.webkit.org/show_bug.cgi?id=71619

Reviewed by Gavin Barraclough.

Added one more configuration options (like Heuristics::minimumOptimizationDelay),
improved debugging in JIT optimization support, changed the number of buckets
in the value profile from 9 to 2, and wrote a more optimal value profiling path
in the old JIT to take advantage of this. It's still possible to play around with
larger numbers of buckets, and we should probably keep this for a little while
until we convince ourselves that using just two buckets is the right call.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::shouldOptimizeNow):
* bytecode/ValueProfile.h:
* jit/JITInlineMethods.h:
(JSC::JIT::emitValueProfilingSite):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/Heuristics.cpp:
(JSC::Heuristics::initializeHeuristics):
* runtime/Heuristics.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@99375 268f45cc-cd09-0410-ab3c-d52691b4dbfc


No differences found