⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 254517 in webkit


Ignore:
Timestamp:
Jan 14, 2020, 10:08:40 AM (7 years ago)
Author:
sbarati@apple.com
Message:

Add an option that enables/disables throwing away baseline JIT code
​https://bugs.webkit.org/show_bug.cgi?id=206244

Reviewed by Robin Morisset.

This option is now set to false as I investigate a perf regression with
the original patch.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finalizeUnconditionally):

  • runtime/OptionsList.h:
Location:
trunk/Source/JavaScriptCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r254514 r254517  
     12020-01-14  Saam Barati  <sbarati@apple.com>
     2
     3        Add an option that enables/disables throwing away baseline JIT code
     4        https://bugs.webkit.org/show_bug.cgi?id=206244
     5
     6        Reviewed by Robin Morisset.
     7
     8        This option is now set to false as I investigate a perf regression with
     9        the original patch.
     10
     11        * bytecode/CodeBlock.cpp:
     12        (JSC::CodeBlock::finalizeUnconditionally):
     13        * runtime/OptionsList.h:
     14
    1152020-01-13  Darin Adler  <darin@apple.com>
    216
  • trunk/Source/JavaScriptCore/bytecode/CodeBlock.cpp

    r254480 r254517  
    13871387    // If BaselineJIT code is not executing, and an optimized replacement exists, we attempt
    13881388    // to discard baseline JIT code and reinstall LLInt code to save JIT memory.
    1389     if (!Options::forceBaseline() && jitType() == JITType::BaselineJIT && !m_vm->heap.codeBlockSet().isCurrentlyExecuting(this)) {
     1389    if (!Options::forceBaseline() && Options::enableThrowingAwayBaselineCode() && jitType() == JITType::BaselineJIT && !m_vm->heap.codeBlockSet().isCurrentlyExecuting(this)) {
    13901390        if (CodeBlock* optimizedCodeBlock = optimizedReplacement()) {
    13911391            if (!optimizedCodeBlock->m_osrExitCounter) {
  • trunk/Source/JavaScriptCore/runtime/OptionsList.h

    r254480 r254517  
    496496    v(Bool, useUnlinkedCodeBlockJettisoning, false, Normal, "If true, UnlinkedCodeBlock can be jettisoned.") \
    497497    v(Unsigned, getByValICMaxNumberOfIdentifiers, 4, Normal, "Number of identifiers we see in the LLInt that could cause us to bail on generating an IC for get_by_val.") \
     498    v(Bool, enableThrowingAwayBaselineCode, false, Normal, nullptr) \
    498499
    499500enum OptionEquivalence {
Note: See TracChangeset for help on using the changeset viewer.