summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/interpreter/CallFrame.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/interpreter/CallFrame.h')
-rw-r--r--Source/JavaScriptCore/interpreter/CallFrame.h26
1 files changed, 13 insertions, 13 deletions
diff --git a/Source/JavaScriptCore/interpreter/CallFrame.h b/Source/JavaScriptCore/interpreter/CallFrame.h
index ea98f6652..0db485214 100644
--- a/Source/JavaScriptCore/interpreter/CallFrame.h
+++ b/Source/JavaScriptCore/interpreter/CallFrame.h
@@ -33,7 +33,7 @@ namespace JSC {
class Arguments;
class JSActivation;
class Interpreter;
- class ScopeChainNode;
+ class JSScope;
// Represents the current state of script execution.
// Passed as the first argument to most functions.
@@ -42,10 +42,10 @@ namespace JSC {
JSValue calleeAsValue() const { return this[RegisterFile::Callee].jsValue(); }
JSObject* callee() const { return this[RegisterFile::Callee].function(); }
CodeBlock* codeBlock() const { return this[RegisterFile::CodeBlock].Register::codeBlock(); }
- ScopeChainNode* scopeChain() const
+ JSScope* scope() const
{
- ASSERT(this[RegisterFile::ScopeChain].Register::scopeChain());
- return this[RegisterFile::ScopeChain].Register::scopeChain();
+ ASSERT(this[RegisterFile::ScopeChain].Register::scope());
+ return this[RegisterFile::ScopeChain].Register::scope();
}
// Global object in which execution began.
@@ -53,13 +53,13 @@ namespace JSC {
// Global object in which the currently executing code was defined.
// Differs from dynamicGlobalObject() during function calls across web browser frames.
- inline JSGlobalObject* lexicalGlobalObject() const;
+ JSGlobalObject* lexicalGlobalObject() const;
// Differs from lexicalGlobalObject because this will have DOM window shell rather than
// the actual DOM window, which can't be "this" for security reasons.
- inline JSObject* globalThisValue() const;
+ JSObject* globalThisValue() const;
- inline JSGlobalData& globalData() const;
+ JSGlobalData& globalData() const;
// Convenience functions for access to global data.
// It takes a few memory references to get from a call frame to the global data
@@ -103,7 +103,7 @@ namespace JSC {
CallFrame& operator=(const Register& r) { *static_cast<Register*>(this) = r; return *this; }
CallFrame* callerFrame() const { return this[RegisterFile::CallerFrame].callFrame(); }
-#if ENABLE(JIT)
+#if ENABLE(JIT) || ENABLE(LLINT)
ReturnAddressPtr returnPC() const { return ReturnAddressPtr(this[RegisterFile::ReturnPC].vPC()); }
bool hasReturnPC() const { return !!this[RegisterFile::ReturnPC].vPC(); }
void clearReturnPC() { registers()[RegisterFile::ReturnPC] = static_cast<Instruction*>(0); }
@@ -166,16 +166,16 @@ namespace JSC {
#endif
void setCallerFrame(CallFrame* callerFrame) { static_cast<Register*>(this)[RegisterFile::CallerFrame] = callerFrame; }
- void setScopeChain(ScopeChainNode* scopeChain) { static_cast<Register*>(this)[RegisterFile::ScopeChain] = scopeChain; }
+ void setScope(JSScope* scope) { static_cast<Register*>(this)[RegisterFile::ScopeChain] = scope; }
- ALWAYS_INLINE void init(CodeBlock* codeBlock, Instruction* vPC, ScopeChainNode* scopeChain,
+ ALWAYS_INLINE void init(CodeBlock* codeBlock, Instruction* vPC, JSScope* scope,
CallFrame* callerFrame, int argc, JSObject* callee)
{
ASSERT(callerFrame); // Use noCaller() rather than 0 for the outer host call frame caller.
ASSERT(callerFrame == noCaller() || callerFrame->removeHostCallFrameFlag()->registerFile()->end() >= this);
setCodeBlock(codeBlock);
- setScopeChain(scopeChain);
+ setScope(scope);
setCallerFrame(callerFrame);
setReturnPC(vPC); // This is either an Instruction* or a pointer into JIT generated code stored as an Instruction*.
setArgumentCountIncludingThis(argc); // original argument count (for the sake of the "arguments" object)
@@ -183,9 +183,9 @@ namespace JSC {
}
// Read a register from the codeframe (or constant from the CodeBlock).
- inline Register& r(int);
+ Register& r(int);
// Read a register for a non-constant
- inline Register& uncheckedR(int);
+ Register& uncheckedR(int);
// Access to arguments.
size_t argumentCount() const { return argumentCountIncludingThis() - 1; }