Title: [176005] trunk/Source/_javascript_Core
- Revision
- 176005
- Author
- msab...@apple.com
- Date
- 2014-11-11 22:00:42 -0800 (Tue, 11 Nov 2014)
Log Message
Change DFG to use scope operand for op_resolve_scope
https://bugs.webkit.org/show_bug.cgi?id=138651
Reviewed by Geoffrey Garen.
Changed to use the provided scope VirtualRegister.
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getScope): Changed to use an argument scope register.
(JSC::DFG::ByteCodeParser::parseBlock): Created VirtualRegister from scope operand.
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (176004 => 176005)
--- trunk/Source/_javascript_Core/ChangeLog 2014-11-12 05:23:03 UTC (rev 176004)
+++ trunk/Source/_javascript_Core/ChangeLog 2014-11-12 06:00:42 UTC (rev 176005)
@@ -1,3 +1,16 @@
+2014-11-11 Michael Saboff <msab...@apple.com>
+
+ Change DFG to use scope operand for op_resolve_scope
+ https://bugs.webkit.org/show_bug.cgi?id=138651
+
+ Reviewed by Geoffrey Garen.
+
+ Changed to use the provided scope VirtualRegister.
+
+ * dfg/DFGByteCodeParser.cpp:
+ (JSC::DFG::ByteCodeParser::getScope): Changed to use an argument scope register.
+ (JSC::DFG::ByteCodeParser::parseBlock): Created VirtualRegister from scope operand.
+
2014-11-11 Gyuyoung Kim <gyuyoung....@samsung.com>
Remove IncrementalSweeper::create()
Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (176004 => 176005)
--- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2014-11-12 05:23:03 UTC (rev 176004)
+++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2014-11-12 06:00:42 UTC (rev 176005)
@@ -206,7 +206,7 @@
bool isDirect);
void emitChecks(const ConstantStructureCheckVector&);
- Node* getScope(unsigned skipCount);
+ Node* getScope(VirtualRegister scopeChain, unsigned skipCount);
void prepareToParseBlock();
void clearCaches();
@@ -2301,9 +2301,9 @@
m_constants.resize(0);
}
-Node* ByteCodeParser::getScope(unsigned skipCount)
+Node* ByteCodeParser::getScope(VirtualRegister scopeChain, unsigned skipCount)
{
- Node* localBase = get(VirtualRegister(JSStack::ScopeChain));
+ Node* localBase = get(scopeChain);
for (unsigned n = skipCount; n--;)
localBase = addToGraph(SkipScope, localBase);
return localBase;
@@ -3198,7 +3198,7 @@
set(VirtualRegister(dst), weakJSConstant(lexicalEnvironment));
break;
}
- set(VirtualRegister(dst), getScope(depth));
+ set(VirtualRegister(dst), getScope(VirtualRegister(currentInstruction[2].u.operand), depth));
break;
}
case Dynamic:
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes