Bug 134090

Summary: [ftlopt] Fold GetById/PutById to MultiGetByOffset/GetByOffset or MultiPutByOffset/PutByOffset, which implies handling non-singleton sets
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, ggaren, mark.lam, mhahnenberg, msaboff, oliver, sam
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 133229    
Attachments:
Description Flags
work in progress
none
the patch oliver: review+

Description Filip Pizlo 2014-06-19 21:35:08 PDT
Patch forthcoming.
Comment 1 Filip Pizlo 2014-06-19 21:36:39 PDT
Created attachment 233404 [details]
work in progress
Comment 2 Filip Pizlo 2014-06-21 12:56:10 PDT
Created attachment 233542 [details]
the patch
Comment 3 Filip Pizlo 2014-06-21 12:56:57 PDT
Comment on attachment 233542 [details]
the patch

View in context: https://bugs.webkit.org/attachment.cgi?id=233542&action=review

> Source/JavaScriptCore/ChangeLog:111
> +        Reviewed by NOBODY (OOPS!).
> +        
> +        Work in progress.
> +
> +        * bytecode/GetByIdStatus.cpp:
> +        (JSC::GetByIdStatus::computeForStubInfo):
> +        (JSC::GetByIdStatus::computeFor):
> +        * bytecode/GetByIdStatus.h:
> +        * bytecode/PutByIdStatus.cpp:
> +        (JSC::PutByIdStatus::computeFor):
> +        * bytecode/PutByIdStatus.h:
> +        * bytecode/PutByIdVariant.h:
> +        (JSC::PutByIdVariant::constantChecks):
> +        * dfg/DFGAbstractInterpreterInlines.h:
> +        (JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
> +        * dfg/DFGByteCodeParser.cpp:
> +        (JSC::DFG::ByteCodeParser::parseBlock):
> +        * dfg/DFGConstantFoldingPhase.cpp:
> +        (JSC::DFG::ConstantFoldingPhase::foldConstants):
> +        (JSC::DFG::ConstantFoldingPhase::emitPutByOffset):
> +        (JSC::DFG::ConstantFoldingPhase::addChecks):
> +        * dfg/DFGNode.h:
> +        (JSC::DFG::Node::convertToMultiGetByOffset):
> +        (JSC::DFG::Node::convertToMultiPutByOffset):
> +        * dfg/DFGStructureAbstractValue.h:
> +        (JSC::DFG::StructureAbstractValue::set):
> +
> +2014-06-19  Filip Pizlo  <fpizlo@apple.com>
> +

I've reverted this locally.
Comment 4 Oliver Hunt 2014-06-22 17:40:00 PDT
(Sorry that took so long I just wanted to checkout the branch and try to get a more complete understanding of what's going on.  Kind of lost track over the last week)
Comment 5 Filip Pizlo 2014-06-22 18:09:01 PDT
Landed in http://trac.webkit.org/changeset/170275