DFG JIT cannot compile op_new_object, op_new_array,
[WebKit.git] / Source / JavaScriptCore / dfg / DFGOperations.h
index aaf1fa3..6dbf7a1 100644 (file)
@@ -50,6 +50,7 @@ typedef EncodedJSValue (*J_DFGOperation_EJP)(ExecState*, EncodedJSValue, void*);
 typedef EncodedJSValue (*J_DFGOperation_EJI)(ExecState*, EncodedJSValue, Identifier*);
 typedef EncodedJSValue (*J_DFGOperation_EP)(ExecState*, void*);
 typedef EncodedJSValue (*J_DFGOperation_EPS)(ExecState*, void*, size_t);
+typedef EncodedJSValue (*J_DFGOperation_ESS)(ExecState*, size_t, size_t);
 typedef EncodedJSValue (*J_DFGOperation_EI)(ExecState*, Identifier*);
 typedef RegisterSizedBoolean (*Z_DFGOperation_EJ)(ExecState*, EncodedJSValue);
 typedef RegisterSizedBoolean (*Z_DFGOperation_EJJ)(ExecState*, EncodedJSValue, EncodedJSValue);
@@ -62,6 +63,7 @@ typedef void *(*P_DFGOperation_E)(ExecState*);
 // These routines are provide callbacks out to C++ implementations of operations too complex to JIT.
 EncodedJSValue operationConvertThis(ExecState*, EncodedJSValue encodedOp1);
 EncodedJSValue operationCreateThis(ExecState*, EncodedJSValue encodedOp1);
+EncodedJSValue operationNewObject(ExecState*);
 EncodedJSValue operationValueAdd(ExecState*, EncodedJSValue encodedOp1, EncodedJSValue encodedOp2);
 EncodedJSValue operationValueAddNotNumber(ExecState*, EncodedJSValue encodedOp1, EncodedJSValue encodedOp2);
 EncodedJSValue operationArithAdd(EncodedJSValue encodedOp1, EncodedJSValue encodedOp2);
@@ -82,6 +84,9 @@ EncodedJSValue operationResolveBaseStrictPut(ExecState*, Identifier*);
 EncodedJSValue operationResolveGlobal(ExecState*, GlobalResolveInfo*, Identifier*);
 EncodedJSValue operationToPrimitive(ExecState*, EncodedJSValue);
 EncodedJSValue operationStrCat(ExecState*, void* start, size_t);
+EncodedJSValue operationNewArray(ExecState*, void* start, size_t);
+EncodedJSValue operationNewArrayBuffer(ExecState*, size_t, size_t);
+EncodedJSValue operationNewRegexp(ExecState*, void*);
 void operationThrowHasInstanceError(ExecState*, EncodedJSValue base);
 void operationPutByValStrict(ExecState*, EncodedJSValue encodedBase, EncodedJSValue encodedProperty, EncodedJSValue encodedValue);
 void operationPutByValNonStrict(ExecState*, EncodedJSValue encodedBase, EncodedJSValue encodedProperty, EncodedJSValue encodedValue);