Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(197)

Unified Diff: JavaScriptCore/jit/JITStubs.cpp

Issue 28077: WebKit side of merge from r41149 to r41181. (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/WebKit/
Patch Set: Created 11 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « JavaScriptCore/jit/JITStubs.h ('k') | JavaScriptCore/runtime/ArrayPrototype.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: JavaScriptCore/jit/JITStubs.cpp
===================================================================
--- JavaScriptCore/jit/JITStubs.cpp (revision 10232)
+++ JavaScriptCore/jit/JITStubs.cpp (working copy)
@@ -28,16 +28,18 @@
*/
#include "config.h"
-#include "Interpreter.h"
+#include "JITStubs.h"
+#if ENABLE(JIT)
+
#include "Arguments.h"
-#include "BatchedTransitionOptimizer.h"
+#include "CallFrame.h"
#include "CodeBlock.h"
-#include "DebuggerCallFrame.h"
-#include "EvalCodeCache.h"
+#include "Collector.h"
+#include "Debugger.h"
#include "ExceptionHelpers.h"
-#include "CallFrame.h"
#include "GlobalEvalFunction.h"
+#include "JIT.h"
#include "JSActivation.h"
#include "JSArray.h"
#include "JSByteArray.h"
@@ -47,56 +49,38 @@
#include "JSStaticScopeObject.h"
#include "JSString.h"
#include "ObjectPrototype.h"
+#include "Operations.h"
#include "Parser.h"
#include "Profiler.h"
#include "RegExpObject.h"
#include "RegExpPrototype.h"
#include "Register.h"
-#include "Collector.h"
-#include "Debugger.h"
-#include "Operations.h"
#include "SamplingTool.h"
#include <stdio.h>
-#if ENABLE(JIT)
-#include "JIT.h"
-#endif
-
-#if ENABLE(ASSEMBLER)
-#include "AssemblerBuffer.h"
-#endif
-
-#if PLATFORM(DARWIN)
-#include <mach/mach.h>
-#endif
-
-#if HAVE(SYS_TIME_H)
-#include <sys/time.h>
-#endif
-
-#if PLATFORM(WIN_OS)
-#include <windows.h>
-#endif
-
-#if PLATFORM(QT)
-#include <QDateTime>
-#endif
-
using namespace std;
namespace JSC {
-#if ENABLE(JIT)
-
#if ENABLE(OPCODE_SAMPLING)
#define CTI_SAMPLER ARG_globalData->interpreter->sampler()
#else
#define CTI_SAMPLER 0
#endif
+JITStubs::JITStubs(JSGlobalData* globalData)
+ : m_ctiArrayLengthTrampoline(0)
+ , m_ctiStringLengthTrampoline(0)
+ , m_ctiVirtualCallPreLink(0)
+ , m_ctiVirtualCallLink(0)
+ , m_ctiVirtualCall(0)
+{
+ JIT::compileCTIMachineTrampolines(globalData, &m_executablePool, &m_ctiArrayLengthTrampoline, &m_ctiStringLengthTrampoline, &m_ctiVirtualCallPreLink, &m_ctiVirtualCallLink, &m_ctiVirtualCall);
+}
+
#if ENABLE(JIT_OPTIMIZE_PROPERTY_ACCESS)
-NEVER_INLINE void Interpreter::tryCTICachePutByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValuePtr baseValue, const PutPropertySlot& slot)
+NEVER_INLINE void JITStubs::tryCachePutByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValuePtr baseValue, const PutPropertySlot& slot)
{
// The interpreter checks for recursion here; I do not believe this can occur in CTI.
@@ -105,7 +89,7 @@
// Uncacheable: give up.
if (!slot.isCacheable()) {
- ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(cti_op_put_by_id_generic));
+ ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(JITStubs::cti_op_put_by_id_generic));
return;
}
@@ -113,13 +97,13 @@
Structure* structure = baseCell->structure();
if (structure->isDictionary()) {
- ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(cti_op_put_by_id_generic));
+ ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(JITStubs::cti_op_put_by_id_generic));
return;
}
// If baseCell != base, then baseCell must be a proxy for another object.
if (baseCell != slot.base()) {
- ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(cti_op_put_by_id_generic));
+ ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(JITStubs::cti_op_put_by_id_generic));
return;
}
@@ -152,35 +136,38 @@
#endif
}
-NEVER_INLINE void Interpreter::tryCTICacheGetByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValuePtr baseValue, const Identifier& propertyName, const PropertySlot& slot)
+NEVER_INLINE void JITStubs::tryCacheGetByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValuePtr baseValue, const Identifier& propertyName, const PropertySlot& slot)
{
// FIXME: Write a test that proves we need to check for recursion here just
// like the interpreter does, then add a check for recursion.
// FIXME: Cache property access for immediates.
if (!baseValue.isCell()) {
- ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(cti_op_get_by_id_generic));
+ ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(JITStubs::cti_op_get_by_id_generic));
return;
}
+
+ JSGlobalData* globalData = &callFrame->globalData();
- if (isJSArray(baseValue) && propertyName == callFrame->propertyNames().length) {
+ if (isJSArray(globalData, baseValue) && propertyName == callFrame->propertyNames().length) {
#if USE(CTI_REPATCH_PIC)
JIT::compilePatchGetArrayLength(callFrame->scopeChain()->globalData, codeBlock, returnAddress);
#else
- ctiPatchCallByReturnAddress(returnAddress, m_ctiArrayLengthTrampoline);
+ ctiPatchCallByReturnAddress(returnAddress, globalData->jitStubs.ctiArrayLengthTrampoline());
#endif
return;
}
- if (isJSString(baseValue) && propertyName == callFrame->propertyNames().length) {
+
+ if (isJSString(globalData, baseValue) && propertyName == callFrame->propertyNames().length) {
// The tradeoff of compiling an patched inline string length access routine does not seem
// to pay off, so we currently only do this for arrays.
- ctiPatchCallByReturnAddress(returnAddress, m_ctiStringLengthTrampoline);
+ ctiPatchCallByReturnAddress(returnAddress, globalData->jitStubs.ctiStringLengthTrampoline());
return;
}
// Uncacheable: give up.
if (!slot.isCacheable()) {
- ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(cti_op_get_by_id_generic));
+ ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(JITStubs::cti_op_get_by_id_generic));
return;
}
@@ -188,7 +175,7 @@
Structure* structure = baseCell->structure();
if (structure->isDictionary()) {
- ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(cti_op_get_by_id_generic));
+ ctiPatchCallByReturnAddress(returnAddress, reinterpret_cast<void*>(JITStubs::cti_op_get_by_id_generic));
return;
}
@@ -343,7 +330,7 @@
} \
} while (0)
-JSObject* Interpreter::cti_op_convert_this(STUB_ARGS)
+JSObject* JITStubs::cti_op_convert_this(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -355,7 +342,7 @@
return result;
}
-void Interpreter::cti_op_end(STUB_ARGS)
+void JITStubs::cti_op_end(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -364,7 +351,7 @@
scopeChain->deref();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_add(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_add(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -409,7 +396,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_pre_inc(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_pre_inc(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -421,20 +408,22 @@
return JSValuePtr::encode(result);
}
-int Interpreter::cti_timeout_check(STUB_ARGS)
+int JITStubs::cti_timeout_check(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
- Interpreter* interpreter = ARG_globalData->interpreter;
+
+ JSGlobalData* globalData = ARG_globalData;
+ TimeoutChecker& timeoutChecker = globalData->timeoutChecker;
- if (interpreter->checkTimeout(ARG_callFrame->dynamicGlobalObject())) {
- ARG_globalData->exception = createInterruptedExecutionException(ARG_globalData);
+ if (timeoutChecker.didTimeOut(ARG_callFrame)) {
+ globalData->exception = createInterruptedExecutionException(globalData);
VM_THROW_EXCEPTION_AT_END();
}
- return interpreter->m_ticksUntilNextTimeoutCheck;
+ return timeoutChecker.ticksUntilNextCheck();
}
-void Interpreter::cti_register_file_check(STUB_ARGS)
+void JITStubs::cti_register_file_check(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -448,7 +437,7 @@
throwStackOverflowError(oldCallFrame, ARG_globalData, oldCallFrame->returnPC(), STUB_RETURN_ADDRESS);
}
-int Interpreter::cti_op_loop_if_less(STUB_ARGS)
+int JITStubs::cti_op_loop_if_less(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -461,7 +450,7 @@
return result;
}
-int Interpreter::cti_op_loop_if_lesseq(STUB_ARGS)
+int JITStubs::cti_op_loop_if_lesseq(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -474,14 +463,14 @@
return result;
}
-JSObject* Interpreter::cti_op_new_object(STUB_ARGS)
+JSObject* JITStubs::cti_op_new_object(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return constructEmptyObject(ARG_callFrame);
}
-void Interpreter::cti_op_put_by_id_generic(STUB_ARGS)
+void JITStubs::cti_op_put_by_id_generic(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -490,7 +479,7 @@
CHECK_FOR_EXCEPTION_AT_END();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_generic(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_generic(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -507,7 +496,7 @@
#if ENABLE(JIT_OPTIMIZE_PROPERTY_ACCESS)
-void Interpreter::cti_op_put_by_id(STUB_ARGS)
+void JITStubs::cti_op_put_by_id(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -522,17 +511,17 @@
CHECK_FOR_EXCEPTION_AT_END();
}
-void Interpreter::cti_op_put_by_id_second(STUB_ARGS)
+void JITStubs::cti_op_put_by_id_second(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
PutPropertySlot slot;
ARG_src1.put(ARG_callFrame, *ARG_id2, ARG_src3, slot);
- ARG_globalData->interpreter->tryCTICachePutByID(ARG_callFrame, ARG_callFrame->codeBlock(), STUB_RETURN_ADDRESS, ARG_src1, slot);
+ tryCachePutByID(ARG_callFrame, ARG_callFrame->codeBlock(), STUB_RETURN_ADDRESS, ARG_src1, slot);
CHECK_FOR_EXCEPTION_AT_END();
}
-void Interpreter::cti_op_put_by_id_fail(STUB_ARGS)
+void JITStubs::cti_op_put_by_id_fail(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -545,7 +534,7 @@
CHECK_FOR_EXCEPTION_AT_END();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -562,7 +551,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_second(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_second(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -573,13 +562,13 @@
PropertySlot slot(baseValue);
JSValuePtr result = baseValue.get(callFrame, ident, slot);
- ARG_globalData->interpreter->tryCTICacheGetByID(callFrame, callFrame->codeBlock(), STUB_RETURN_ADDRESS, baseValue, ident, slot);
+ tryCacheGetByID(callFrame, callFrame->codeBlock(), STUB_RETURN_ADDRESS, baseValue, ident, slot);
CHECK_FOR_EXCEPTION_AT_END();
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_self_fail(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_self_fail(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -654,7 +643,7 @@
return prototypeStructureList;
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_proto_list(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_proto_list(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -715,7 +704,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_proto_list_full(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_proto_list_full(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -727,7 +716,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_proto_fail(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_proto_fail(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -739,7 +728,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_array_fail(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_array_fail(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -751,7 +740,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_id_string_fail(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_id_string_fail(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -765,7 +754,7 @@
#endif
-JSValueEncodedAsPointer* Interpreter::cti_op_instanceof(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_instanceof(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -804,7 +793,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_del_by_id(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_del_by_id(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -817,7 +806,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_mul(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_mul(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -835,14 +824,14 @@
return JSValuePtr::encode(result);
}
-JSObject* Interpreter::cti_op_new_func(STUB_ARGS)
+JSObject* JITStubs::cti_op_new_func(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return ARG_func1->makeFunction(ARG_callFrame, ARG_callFrame->scopeChain());
}
-void* Interpreter::cti_op_call_JSFunction(STUB_ARGS)
+void* JITStubs::cti_op_call_JSFunction(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -851,7 +840,7 @@
ASSERT(ARG_src1.getCallData(callData) == CallTypeJS);
#endif
- ScopeChainNode* callDataScopeChain = asFunction(ARG_src1)->m_scopeChain.node();
+ ScopeChainNode* callDataScopeChain = asFunction(ARG_src1)->scope().node();
CodeBlock* newCodeBlock = &asFunction(ARG_src1)->body()->bytecode(callDataScopeChain);
if (!newCodeBlock->jitCode())
@@ -860,7 +849,7 @@
return newCodeBlock;
}
-VoidPtrPair Interpreter::cti_op_call_arityCheck(STUB_ARGS)
+VoidPtrPair JITStubs::cti_op_call_arityCheck(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -905,26 +894,27 @@
RETURN_PAIR(newCodeBlock, callFrame);
}
-void* Interpreter::cti_vm_dontLazyLinkCall(STUB_ARGS)
+void* JITStubs::cti_vm_dontLazyLinkCall(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
+ JSGlobalData* globalData = ARG_globalData;
JSFunction* callee = asFunction(ARG_src1);
- CodeBlock* codeBlock = &callee->body()->bytecode(callee->m_scopeChain.node());
+ CodeBlock* codeBlock = &callee->body()->bytecode(callee->scope().node());
if (!codeBlock->jitCode())
- JIT::compile(ARG_globalData, codeBlock);
+ JIT::compile(globalData, codeBlock);
- ctiPatchNearCallByReturnAddress(ARG_returnAddress2, ARG_globalData->interpreter->m_ctiVirtualCallLink);
+ ctiPatchNearCallByReturnAddress(ARG_returnAddress2, globalData->jitStubs.ctiVirtualCallLink());
return codeBlock->jitCode().addressForCall();
}
-void* Interpreter::cti_vm_lazyLinkCall(STUB_ARGS)
+void* JITStubs::cti_vm_lazyLinkCall(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
JSFunction* callee = asFunction(ARG_src1);
- CodeBlock* codeBlock = &callee->body()->bytecode(callee->m_scopeChain.node());
+ CodeBlock* codeBlock = &callee->body()->bytecode(callee->scope().node());
if (!codeBlock->jitCode())
JIT::compile(ARG_globalData, codeBlock);
@@ -934,7 +924,7 @@
return codeBlock->jitCode().addressForCall();
}
-JSObject* Interpreter::cti_op_push_activation(STUB_ARGS)
+JSObject* JITStubs::cti_op_push_activation(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -943,7 +933,7 @@
return activation;
}
-JSValueEncodedAsPointer* Interpreter::cti_op_call_NotJSFunction(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_call_NotJSFunction(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -992,7 +982,7 @@
VM_THROW_EXCEPTION();
}
-void Interpreter::cti_op_create_arguments(STUB_ARGS)
+void JITStubs::cti_op_create_arguments(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1001,7 +991,7 @@
ARG_callFrame[RegisterFile::ArgumentsRegister] = arguments;
}
-void Interpreter::cti_op_create_arguments_no_params(STUB_ARGS)
+void JITStubs::cti_op_create_arguments_no_params(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1010,7 +1000,7 @@
ARG_callFrame[RegisterFile::ArgumentsRegister] = arguments;
}
-void Interpreter::cti_op_tear_off_activation(STUB_ARGS)
+void JITStubs::cti_op_tear_off_activation(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1018,7 +1008,7 @@
asActivation(ARG_src1)->copyRegisters(ARG_callFrame->optionalCalleeArguments());
}
-void Interpreter::cti_op_tear_off_arguments(STUB_ARGS)
+void JITStubs::cti_op_tear_off_arguments(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1026,7 +1016,7 @@
ARG_callFrame->optionalCalleeArguments()->copyRegisters();
}
-void Interpreter::cti_op_profile_will_call(STUB_ARGS)
+void JITStubs::cti_op_profile_will_call(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1034,7 +1024,7 @@
(*ARG_profilerReference)->willExecute(ARG_callFrame, ARG_src1);
}
-void Interpreter::cti_op_profile_did_call(STUB_ARGS)
+void JITStubs::cti_op_profile_did_call(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1042,7 +1032,7 @@
(*ARG_profilerReference)->didExecute(ARG_callFrame, ARG_src1);
}
-void Interpreter::cti_op_ret_scopeChain(STUB_ARGS)
+void JITStubs::cti_op_ret_scopeChain(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1050,7 +1040,7 @@
ARG_callFrame->scopeChain()->deref();
}
-JSObject* Interpreter::cti_op_new_array(STUB_ARGS)
+JSObject* JITStubs::cti_op_new_array(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1058,7 +1048,7 @@
return constructArray(ARG_callFrame, argList);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_resolve(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_resolve(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1086,7 +1076,7 @@
VM_THROW_EXCEPTION();
}
-JSObject* Interpreter::cti_op_construct_JSConstruct(STUB_ARGS)
+JSObject* JITStubs::cti_op_construct_JSConstruct(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1099,11 +1089,11 @@
if (ARG_src4.isObject())
structure = asObject(ARG_src4)->inheritorID();
else
- structure = asFunction(ARG_src1)->m_scopeChain.node()->globalObject()->emptyObjectStructure();
+ structure = asFunction(ARG_src1)->scope().node()->globalObject()->emptyObjectStructure();
return new (ARG_globalData) JSObject(structure);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_construct_NotJSConstruct(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_construct_NotJSConstruct(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1137,12 +1127,12 @@
VM_THROW_EXCEPTION();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_val(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_val(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
CallFrame* callFrame = ARG_callFrame;
- Interpreter* interpreter = ARG_globalData->interpreter;
+ JSGlobalData* globalData = ARG_globalData;
JSValuePtr baseValue = ARG_src1;
JSValuePtr subscript = ARG_src2;
@@ -1151,15 +1141,15 @@
if (LIKELY(subscript.isUInt32Fast())) {
uint32_t i = subscript.getUInt32Fast();
- if (interpreter->isJSArray(baseValue)) {
+ if (isJSArray(globalData, baseValue)) {
JSArray* jsArray = asArray(baseValue);
if (jsArray->canGetIndex(i))
result = jsArray->getIndex(i);
else
result = jsArray->JSArray::get(callFrame, i);
- } else if (interpreter->isJSString(baseValue) && asString(baseValue)->canGetIndex(i))
+ } else if (isJSString(globalData, baseValue) && asString(baseValue)->canGetIndex(i))
result = asString(baseValue)->getIndex(ARG_globalData, i);
- else if (interpreter->isJSByteArray(baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
+ else if (isJSByteArray(globalData, baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
// All fast byte array accesses are safe from exceptions so return immediately to avoid exception checks.
ctiPatchCallByReturnAddress(STUB_RETURN_ADDRESS, reinterpret_cast<void*>(cti_op_get_by_val_byte_array));
return JSValuePtr::encode(asByteArray(baseValue)->getIndex(callFrame, i));
@@ -1174,12 +1164,12 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_get_by_val_byte_array(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_get_by_val_byte_array(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
CallFrame* callFrame = ARG_callFrame;
- Interpreter* interpreter = ARG_globalData->interpreter;
+ JSGlobalData* globalData = ARG_globalData;
JSValuePtr baseValue = ARG_src1;
JSValuePtr subscript = ARG_src2;
@@ -1188,13 +1178,13 @@
if (LIKELY(subscript.isUInt32Fast())) {
uint32_t i = subscript.getUInt32Fast();
- if (interpreter->isJSByteArray(baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
+ if (isJSByteArray(globalData, baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
// All fast byte array accesses are safe from exceptions so return immediately to avoid exception checks.
return JSValuePtr::encode(asByteArray(baseValue)->getIndex(callFrame, i));
}
result = baseValue.get(callFrame, i);
- if (!interpreter->isJSByteArray(baseValue))
+ if (!isJSByteArray(globalData, baseValue))
ctiPatchCallByReturnAddress(STUB_RETURN_ADDRESS, reinterpret_cast<void*>(cti_op_get_by_val));
} else {
Identifier property(callFrame, subscript.toString(callFrame));
@@ -1205,7 +1195,7 @@
return JSValuePtr::encode(result);
}
-VoidPtrPair Interpreter::cti_op_resolve_func(STUB_ARGS)
+VoidPtrPair JITStubs::cti_op_resolve_func(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1247,7 +1237,7 @@
VM_THROW_EXCEPTION_2();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_sub(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_sub(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1265,12 +1255,12 @@
return JSValuePtr::encode(result);
}
-void Interpreter::cti_op_put_by_val(STUB_ARGS)
+void JITStubs::cti_op_put_by_val(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
CallFrame* callFrame = ARG_callFrame;
- Interpreter* interpreter = ARG_globalData->interpreter;
+ JSGlobalData* globalData = ARG_globalData;
JSValuePtr baseValue = ARG_src1;
JSValuePtr subscript = ARG_src2;
@@ -1278,13 +1268,13 @@
if (LIKELY(subscript.isUInt32Fast())) {
uint32_t i = subscript.getUInt32Fast();
- if (interpreter->isJSArray(baseValue)) {
+ if (isJSArray(globalData, baseValue)) {
JSArray* jsArray = asArray(baseValue);
if (jsArray->canSetIndex(i))
jsArray->setIndex(i, value);
else
jsArray->JSArray::put(callFrame, i, value);
- } else if (interpreter->isJSByteArray(baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
+ } else if (isJSByteArray(globalData, baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
JSByteArray* jsByteArray = asByteArray(baseValue);
ctiPatchCallByReturnAddress(STUB_RETURN_ADDRESS, reinterpret_cast<void*>(cti_op_put_by_val_byte_array));
// All fast byte array accesses are safe from exceptions so return immediately to avoid exception checks.
@@ -1313,17 +1303,16 @@
CHECK_FOR_EXCEPTION_AT_END();
}
-void Interpreter::cti_op_put_by_val_array(STUB_ARGS)
+void JITStubs::cti_op_put_by_val_array(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
CallFrame* callFrame = ARG_callFrame;
-
JSValuePtr baseValue = ARG_src1;
int i = ARG_int2;
JSValuePtr value = ARG_src3;
- ASSERT(ARG_globalData->interpreter->isJSArray(baseValue));
+ ASSERT(isJSArray(ARG_globalData, baseValue));
if (LIKELY(i >= 0))
asArray(baseValue)->JSArray::put(callFrame, i, value);
@@ -1341,12 +1330,12 @@
CHECK_FOR_EXCEPTION_AT_END();
}
-void Interpreter::cti_op_put_by_val_byte_array(STUB_ARGS)
+void JITStubs::cti_op_put_by_val_byte_array(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
CallFrame* callFrame = ARG_callFrame;
- Interpreter* interpreter = ARG_globalData->interpreter;
+ JSGlobalData* globalData = ARG_globalData;
JSValuePtr baseValue = ARG_src1;
JSValuePtr subscript = ARG_src2;
@@ -1354,7 +1343,7 @@
if (LIKELY(subscript.isUInt32Fast())) {
uint32_t i = subscript.getUInt32Fast();
- if (interpreter->isJSByteArray(baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
+ if (isJSByteArray(globalData, baseValue) && asByteArray(baseValue)->canAccessIndex(i)) {
JSByteArray* jsByteArray = asByteArray(baseValue);
// All fast byte array accesses are safe from exceptions so return immediately to avoid exception checks.
@@ -1370,7 +1359,7 @@
}
}
- if (!interpreter->isJSByteArray(baseValue))
+ if (!isJSByteArray(globalData, baseValue))
ctiPatchCallByReturnAddress(STUB_RETURN_ADDRESS, reinterpret_cast<void*>(cti_op_put_by_val));
baseValue.put(callFrame, i, value);
} else {
@@ -1384,7 +1373,7 @@
CHECK_FOR_EXCEPTION_AT_END();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_lesseq(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_lesseq(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1394,7 +1383,7 @@
return JSValuePtr::encode(result);
}
-int Interpreter::cti_op_loop_if_true(STUB_ARGS)
+int JITStubs::cti_op_loop_if_true(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1407,7 +1396,7 @@
return result;
}
-JSValueEncodedAsPointer* Interpreter::cti_op_negate(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_negate(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1423,14 +1412,14 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_resolve_base(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_resolve_base(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return JSValuePtr::encode(JSC::resolveBase(ARG_callFrame, *ARG_id1, ARG_callFrame->scopeChain()));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_resolve_skip(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_resolve_skip(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1463,7 +1452,7 @@
VM_THROW_EXCEPTION();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_resolve_global(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_resolve_global(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1495,7 +1484,7 @@
VM_THROW_EXCEPTION();
}
-JSValueEncodedAsPointer* Interpreter::cti_op_div(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_div(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1513,7 +1502,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_pre_dec(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_pre_dec(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1525,7 +1514,7 @@
return JSValuePtr::encode(result);
}
-int Interpreter::cti_op_jless(STUB_ARGS)
+int JITStubs::cti_op_jless(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1538,7 +1527,7 @@
return result;
}
-JSValueEncodedAsPointer* Interpreter::cti_op_not(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_not(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1551,7 +1540,7 @@
return JSValuePtr::encode(result);
}
-int Interpreter::cti_op_jtrue(STUB_ARGS)
+int JITStubs::cti_op_jtrue(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1564,7 +1553,7 @@
return result;
}
-VoidPtrPair Interpreter::cti_op_post_inc(STUB_ARGS)
+VoidPtrPair JITStubs::cti_op_post_inc(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1578,7 +1567,7 @@
RETURN_PAIR(JSValuePtr::encode(number), JSValuePtr::encode(jsNumber(ARG_globalData, number.uncheckedGetNumber() + 1)));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_eq(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_eq(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1593,7 +1582,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_lshift(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_lshift(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1613,7 +1602,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_bitand(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_bitand(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1631,7 +1620,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_rshift(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_rshift(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1651,7 +1640,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_bitnot(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_bitnot(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1667,7 +1656,7 @@
return JSValuePtr::encode(result);
}
-VoidPtrPair Interpreter::cti_op_resolve_with_base(STUB_ARGS)
+VoidPtrPair JITStubs::cti_op_resolve_with_base(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1701,14 +1690,14 @@
VM_THROW_EXCEPTION_2();
}
-JSObject* Interpreter::cti_op_new_func_exp(STUB_ARGS)
+JSObject* JITStubs::cti_op_new_func_exp(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return ARG_funcexp1->makeFunction(ARG_callFrame, ARG_callFrame->scopeChain());
}
-JSValueEncodedAsPointer* Interpreter::cti_op_mod(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_mod(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1722,7 +1711,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_less(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_less(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1732,7 +1721,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_neq(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_neq(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1747,7 +1736,7 @@
return JSValuePtr::encode(result);
}
-VoidPtrPair Interpreter::cti_op_post_dec(STUB_ARGS)
+VoidPtrPair JITStubs::cti_op_post_dec(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1761,7 +1750,7 @@
RETURN_PAIR(JSValuePtr::encode(number), JSValuePtr::encode(jsNumber(ARG_globalData, number.uncheckedGetNumber() - 1)));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_urshift(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_urshift(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1779,7 +1768,7 @@
}
}
-JSValueEncodedAsPointer* Interpreter::cti_op_bitxor(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_bitxor(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1793,14 +1782,14 @@
return JSValuePtr::encode(result);
}
-JSObject* Interpreter::cti_op_new_regexp(STUB_ARGS)
+JSObject* JITStubs::cti_op_new_regexp(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return new (ARG_globalData) RegExpObject(ARG_callFrame->lexicalGlobalObject()->regExpStructure(), ARG_regexp1);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_bitor(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_bitor(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1814,7 +1803,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_call_eval(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_call_eval(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1845,7 +1834,7 @@
return JSValuePtr::encode(jsImpossibleValue());
}
-JSValueEncodedAsPointer* Interpreter::cti_op_throw(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_throw(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1871,14 +1860,14 @@
return JSValuePtr::encode(exceptionValue);
}
-JSPropertyNameIterator* Interpreter::cti_op_get_pnames(STUB_ARGS)
+JSPropertyNameIterator* JITStubs::cti_op_get_pnames(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return JSPropertyNameIterator::create(ARG_callFrame, ARG_src1);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_next_pname(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_next_pname(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1889,7 +1878,7 @@
return JSValuePtr::encode(temp);
}
-JSObject* Interpreter::cti_op_push_scope(STUB_ARGS)
+JSObject* JITStubs::cti_op_push_scope(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1899,21 +1888,21 @@
return o;
}
-void Interpreter::cti_op_pop_scope(STUB_ARGS)
+void JITStubs::cti_op_pop_scope(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
ARG_callFrame->setScopeChain(ARG_callFrame->scopeChain()->pop());
}
-JSValueEncodedAsPointer* Interpreter::cti_op_typeof(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_typeof(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return JSValuePtr::encode(jsTypeStringForValue(ARG_callFrame, ARG_src1));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_is_undefined(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_is_undefined(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1921,42 +1910,42 @@
return JSValuePtr::encode(jsBoolean(v.isCell() ? v.asCell()->structure()->typeInfo().masqueradesAsUndefined() : v.isUndefined()));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_is_boolean(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_is_boolean(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return JSValuePtr::encode(jsBoolean(ARG_src1.isBoolean()));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_is_number(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_is_number(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return JSValuePtr::encode(jsBoolean(ARG_src1.isNumber()));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_is_string(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_is_string(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
- return JSValuePtr::encode(jsBoolean(ARG_globalData->interpreter->isJSString(ARG_src1)));
+ return JSValuePtr::encode(jsBoolean(isJSString(ARG_globalData, ARG_src1)));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_is_object(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_is_object(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return JSValuePtr::encode(jsBoolean(jsIsObjectType(ARG_src1)));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_is_function(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_is_function(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
return JSValuePtr::encode(jsBoolean(jsIsFunctionType(ARG_src1)));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_stricteq(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_stricteq(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1966,7 +1955,7 @@
return JSValuePtr::encode(jsBoolean(JSValuePtr::strictEqual(src1, src2)));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_nstricteq(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_nstricteq(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1976,7 +1965,7 @@
return JSValuePtr::encode(jsBoolean(!JSValuePtr::strictEqual(src1, src2)));
}
-JSValueEncodedAsPointer* Interpreter::cti_op_to_jsnumber(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_to_jsnumber(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -1988,7 +1977,7 @@
return JSValuePtr::encode(result);
}
-JSValueEncodedAsPointer* Interpreter::cti_op_in(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_in(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2015,7 +2004,7 @@
return JSValuePtr::encode(jsBoolean(baseObj->hasProperty(callFrame, property)));
}
-JSObject* Interpreter::cti_op_push_new_scope(STUB_ARGS)
+JSObject* JITStubs::cti_op_push_new_scope(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2026,7 +2015,7 @@
return scope;
}
-void Interpreter::cti_op_jmp_scopes(STUB_ARGS)
+void JITStubs::cti_op_jmp_scopes(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2039,7 +2028,7 @@
callFrame->setScopeChain(tmp);
}
-void Interpreter::cti_op_put_by_index(STUB_ARGS)
+void JITStubs::cti_op_put_by_index(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2049,7 +2038,7 @@
ARG_src1.put(callFrame, property, ARG_src3);
}
-void* Interpreter::cti_op_switch_imm(STUB_ARGS)
+void* JITStubs::cti_op_switch_imm(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2069,7 +2058,7 @@
}
}
-void* Interpreter::cti_op_switch_char(STUB_ARGS)
+void* JITStubs::cti_op_switch_char(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2089,7 +2078,7 @@
return result;
}
-void* Interpreter::cti_op_switch_string(STUB_ARGS)
+void* JITStubs::cti_op_switch_string(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2108,7 +2097,7 @@
return result;
}
-JSValueEncodedAsPointer* Interpreter::cti_op_del_by_val(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_op_del_by_val(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2133,7 +2122,7 @@
return JSValuePtr::encode(result);
}
-void Interpreter::cti_op_put_getter(STUB_ARGS)
+void JITStubs::cti_op_put_getter(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2145,7 +2134,7 @@
baseObj->defineGetter(callFrame, *ARG_id2, asObject(ARG_src3));
}
-void Interpreter::cti_op_put_setter(STUB_ARGS)
+void JITStubs::cti_op_put_setter(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2157,7 +2146,7 @@
baseObj->defineSetter(callFrame, *ARG_id2, asObject(ARG_src3));
}
-JSObject* Interpreter::cti_op_new_error(STUB_ARGS)
+JSObject* JITStubs::cti_op_new_error(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2171,7 +2160,7 @@
return Error::create(callFrame, static_cast<ErrorType>(type), message.toString(callFrame), lineNumber, codeBlock->ownerNode()->sourceID(), codeBlock->ownerNode()->sourceURL());
}
-void Interpreter::cti_op_debug(STUB_ARGS)
+void JITStubs::cti_op_debug(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2184,7 +2173,7 @@
ARG_globalData->interpreter->debug(callFrame, static_cast<DebugHookID>(debugHookID), firstLine, lastLine);
}
-JSValueEncodedAsPointer* Interpreter::cti_vm_throw(STUB_ARGS)
+JSValueEncodedAsPointer* JITStubs::cti_vm_throw(STUB_ARGS)
{
BEGIN_STUB_FUNCTION();
@@ -2222,6 +2211,6 @@
#undef VM_THROW_EXCEPTION_2
#undef VM_THROW_EXCEPTION_AT_END
-#endif // ENABLE(JIT)
-
} // namespace JSC
+
+#endif // ENABLE(JIT)
« no previous file with comments | « JavaScriptCore/jit/JITStubs.h ('k') | JavaScriptCore/runtime/ArrayPrototype.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698