Reviewed by Oliver.
- inline ActivationImp::init for 0.8% SunSpider speedup
* kjs/Activation.h:
(KJS::ActivationImp::init): Moved here from function.cpp
* kjs/function.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31136
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2008-03-18 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Oliver.
+
+ - inline ActivationImp::init for 0.8% SunSpider speedup
+
+ * kjs/Activation.h:
+ (KJS::ActivationImp::init): Moved here from function.cpp
+ * kjs/function.cpp:
+
2008-03-18 Simon Hausmann <hausmann@webkit.org>
Fix the Qt build.
#include "ExecState.h"
#include "JSVariableObject.h"
#include "object.h"
+#include "function.h"
namespace KJS {
ActivationData* d() const { return static_cast<ActivationData*>(JSVariableObject::d); }
};
+ inline void ActivationImp::init(ExecState* exec)
+ {
+ d()->exec = exec;
+ d()->function = exec->function();
+ d()->symbolTable = &exec->function()->body->symbolTable();
+ d()->argumentsObject = 0;
+ }
+
const size_t activationStackNodeSize = 32;
struct StackActivation {
delete d();
}
-void ActivationImp::init(ExecState* exec)
-{
- d()->symbolTable = &exec->function()->body->symbolTable();
- d()->exec = exec;
- d()->function = exec->function();
- d()->argumentsObject = 0;
-}
-
JSValue* ActivationImp::argumentsGetter(ExecState* exec, JSObject*, const Identifier&, const PropertySlot& slot)
{
ActivationImp* thisObj = static_cast<ActivationImp*>(slot.slotBase());