summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h
diff options
context:
space:
mode:
authorKent Hansen <khansen@trolltech.com>2009-07-09 07:28:56 (GMT)
committerKent Hansen <khansen@trolltech.com>2009-07-09 07:28:56 (GMT)
commitf2e0f336183e8001f946da5b7aa45b9367ed68ba (patch)
tree87cf5ab1b6e33fae823c52e9da11831a04375f47 /src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h
parenta4e0ae8af7b550117d1e9d9dbb90564d50985fe3 (diff)
downloadQt-f2e0f336183e8001f946da5b7aa45b9367ed68ba.zip
Qt-f2e0f336183e8001f946da5b7aa45b9367ed68ba.tar.gz
Qt-f2e0f336183e8001f946da5b7aa45b9367ed68ba.tar.bz2
store frame's callee as a normal JSObject
It's possible for any JSObject to be a callee; all it needs to do is implement getCallData().
Diffstat (limited to 'src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h')
-rw-r--r--src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h b/src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h
index b1e6c4d..a8a677e 100644
--- a/src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h
+++ b/src/3rdparty/webkit/JavaScriptCore/interpreter/CallFrame.h
@@ -37,7 +37,7 @@ namespace JSC {
// Passed as the first argument to most functions.
class ExecState : private Register {
public:
- InternalFunction* callee() const { return this[RegisterFile::Callee].function(); }
+ JSObject* callee() const { return this[RegisterFile::Callee].object(); }
CodeBlock* codeBlock() const { return this[RegisterFile::CodeBlock].Register::codeBlock(); }
ScopeChainNode* scopeChain() const { return this[RegisterFile::ScopeChain].Register::scopeChain(); }
int argumentCount() const { return this[RegisterFile::ArgumentCount].i(); }
@@ -110,7 +110,7 @@ namespace JSC {
void setScopeChain(ScopeChainNode* scopeChain) { this[RegisterFile::ScopeChain] = scopeChain; }
ALWAYS_INLINE void init(CodeBlock* codeBlock, Instruction* vPC, ScopeChainNode* scopeChain,
- CallFrame* callerFrame, int returnValueRegister, int argc, InternalFunction* function)
+ CallFrame* callerFrame, int returnValueRegister, int argc, JSObject* callee)
{
ASSERT(callerFrame); // Use noCaller() rather than 0 for the outer host call frame caller.
@@ -120,7 +120,7 @@ namespace JSC {
this[RegisterFile::ReturnPC] = vPC; // This is either an Instruction* or a pointer into JIT generated code stored as an Instruction*.
this[RegisterFile::ReturnValueRegister] = returnValueRegister;
setArgumentCount(argc); // original argument count (for the sake of the "arguments" object)
- setCallee(function);
+ setCallee(callee);
setCalleeArguments(0);
}
@@ -134,7 +134,7 @@ namespace JSC {
int returnValueRegister() const { return this[RegisterFile::ReturnValueRegister].i(); }
void setArgumentCount(int count) { this[RegisterFile::ArgumentCount] = count; }
- void setCallee(InternalFunction* callee) { this[RegisterFile::Callee] = callee; }
+ void setCallee(JSObject* callee) { this[RegisterFile::Callee] = callee; }
void setCodeBlock(CodeBlock* codeBlock) { this[RegisterFile::CodeBlock] = codeBlock; }
static const intptr_t HostCallFrameFlag = 1;