summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/bytecode/CodeBlock.h
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2012-09-14 16:29:47 +0200
committerSimon Hausmann <simon.hausmann@nokia.com>2012-09-14 16:29:47 +0200
commitd0424a769059c84ae20beb3c217812792ea6726b (patch)
tree6f94a5c3db8c52c6694ee56498542a6c35417350 /Source/JavaScriptCore/bytecode/CodeBlock.h
parent88a04ac016f57c2d78e714682445dff2e7db4ade (diff)
downloadqtwebkit-d0424a769059c84ae20beb3c217812792ea6726b.tar.gz
Imported WebKit commit 37c5e5041d39a14ea0d429a77ebd352e4bd26516 (http://svn.webkit.org/repository/webkit/trunk@128608)
New snapshot that enables WebKit2 build on Windows (still some bugs) and allows for WebKit to be built with qmake && make
Diffstat (limited to 'Source/JavaScriptCore/bytecode/CodeBlock.h')
-rw-r--r--Source/JavaScriptCore/bytecode/CodeBlock.h29
1 files changed, 8 insertions, 21 deletions
diff --git a/Source/JavaScriptCore/bytecode/CodeBlock.h b/Source/JavaScriptCore/bytecode/CodeBlock.h
index 1d56999ff..07d1e0a06 100644
--- a/Source/JavaScriptCore/bytecode/CodeBlock.h
+++ b/Source/JavaScriptCore/bytecode/CodeBlock.h
@@ -547,29 +547,16 @@ namespace JSC {
return needsFullScopeChain() && codeType() != GlobalCode;
}
- bool argumentsAreCaptured() const
- {
- return needsActivation() || usesArguments();
- }
-
- bool argumentIsCaptured(int) const
- {
- return argumentsAreCaptured();
- }
-
- bool localIsCaptured(InlineCallFrame* inlineCallFrame, int operand) const
- {
- if (!inlineCallFrame)
- return operand < m_numCapturedVars;
-
- return inlineCallFrame->capturedVars.get(operand);
- }
-
- bool isCaptured(InlineCallFrame* inlineCallFrame, int operand) const
+ bool isCaptured(int operand, InlineCallFrame* inlineCallFrame = 0) const
{
+ if (inlineCallFrame && !operandIsArgument(operand))
+ return inlineCallFrame->capturedVars.get(operand);
+
+ // Our estimate of argument capture is conservative.
if (operandIsArgument(operand))
- return argumentIsCaptured(operandToArgument(operand));
- return localIsCaptured(inlineCallFrame, operand);
+ return needsActivation() || usesArguments();
+
+ return operand < m_numCapturedVars;
}
CodeType codeType() const { return m_codeType; }