Changeset 166510 in webkit


Ignore:
Timestamp:
Mar 31, 2014 9:50:15 AM (10 years ago)
Author:
fpizlo@apple.com
Message:

More validation for FTL inline caches
https://bugs.webkit.org/show_bug.cgi?id=130948

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::handlePutById):

  • runtime/Options.h:

Tools:

  • Scripts/run-jsc-stress-tests:
Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r166505 r166510  
     12014-03-31  Filip Pizlo  <fpizlo@apple.com>
     2
     3        More validation for FTL inline caches
     4        https://bugs.webkit.org/show_bug.cgi?id=130948
     5
     6        Reviewed by Geoffrey Garen.
     7
     8        * dfg/DFGByteCodeParser.cpp:
     9        (JSC::DFG::ByteCodeParser::handleGetById):
     10        (JSC::DFG::ByteCodeParser::handlePutById):
     11        * runtime/Options.h:
     12
    1132014-03-31  Filip Pizlo  <fpizlo@apple.com>
    214
  • trunk/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp

    r166276 r166510  
    18861886    const GetByIdStatus& getByIdStatus)
    18871887{
    1888     if (!getByIdStatus.isSimple()) {
     1888    if (!getByIdStatus.isSimple() || !Options::enableAccessInlining()) {
    18891889        set(VirtualRegister(destinationOperand),
    18901890            addToGraph(
     
    19721972    const PutByIdStatus& putByIdStatus, bool isDirect)
    19731973{
    1974     if (!putByIdStatus.isSimple()) {
     1974    if (!putByIdStatus.isSimple() || !Options::enableAccessInlining()) {
    19751975        if (!putByIdStatus.isSet())
    19761976            addToGraph(ForceOSRExit);
  • trunk/Source/JavaScriptCore/runtime/Options.h

    r166463 r166510  
    161161    v(bool, clobberAllRegsInFTLICSlowPath, !ASSERT_DISABLED) \
    162162    v(bool, assumeAllRegsInFTLICAreLive, true) \
     163    v(bool, enableAccessInlining, true) \
    163164    \
    164165    v(bool, enableConcurrentJIT, true) \
  • trunk/Tools/ChangeLog

    r166504 r166510  
     12014-03-31  Filip Pizlo  <fpizlo@apple.com>
     2
     3        More validation for FTL inline caches
     4        https://bugs.webkit.org/show_bug.cgi?id=130948
     5
     6        Reviewed by Geoffrey Garen.
     7
     8        * Scripts/run-jsc-stress-tests:
     9
    1102014-03-31  Carlos Garcia Campos  <cgarcia@igalia.com>
    211
  • trunk/Tools/Scripts/run-jsc-stress-tests

    r166463 r166510  
    588588end
    589589
    590 def runFTLNoSimpleOpt
    591     run("ftl-no-simple-opt", "--enableConcurrentJIT=false", "--llvmSimpleOpt=false", *FTL_OPTIONS) if $enableFTL
     590def runFTLNoCJITNoSimpleOpt
     591    run("ftl-no-cjit-no-simple-opt", "--enableConcurrentJIT=false", "--llvmSimpleOpt=false", *FTL_OPTIONS) if $enableFTL
     592end
     593
     594def runNoCJITNoAccessInlining
     595    run("no-cjit-no-access-inlining", "--enableConcurrentJIT=false", "--enableAccessInlining=false")
     596end
     597
     598def runFTLNoCJITNoAccessInlining
     599    run("ftl-no-cjit-no-access-inlining", "--enableConcurrentJIT=false", "--enableAccessInlining=false", *FTL_OPTIONS) if $enableFTL
    592600end
    593601
     
    602610    runFTLNoCJITValidate
    603611    runFTLNoCJITNoInlineValidate
    604     runFTLNoCJITOSRValidation
    605612    runFTLEager
    606613    runFTLEagerNoCJITValidate
    607     runFTLEagerNoCJITOSRValidation
    608614end
    609615
     
    615621end
    616622
    617 def defaultFTLSpotCheck
     623def defaultSpotCheck
    618624    defaultQuickRun
    619     runFTLNoSimpleOpt
     625    runFTLNoCJITNoSimpleOpt
     626    runFTLNoCJITOSRValidation
     627    runNoCJITNoAccessInlining
     628    runFTLNoCJITNoAccessInlining
    620629end
    621630
Note: See TracChangeset for help on using the changeset viewer.