Index: src/runtime.h |
diff --git a/src/runtime.h b/src/runtime.h |
index 18509bdc5cd723fd735e330f1ae46a442744c67d..296df164f7857bc781badf196317116f5375936c 100644 |
--- a/src/runtime.h |
+++ b/src/runtime.h |
@@ -137,6 +137,7 @@ namespace internal { |
F(NumberToJSUint32, 1, 1) \ |
F(NumberToJSInt32, 1, 1) \ |
F(NumberToSmi, 1, 1) \ |
+ F(NumberToStringInternal, 1, 1) \ |
F(AllocateHeapNumber, 0, 1) \ |
\ |
/* Arithmetic operations */ \ |
@@ -187,6 +188,8 @@ namespace internal { |
F(RegExpCompile, 3, 1) \ |
F(RegExpExecMultiple, 4, 1) \ |
F(RegExpInitializeObject, 5, 1) \ |
+ F(RegExpConstructResultInternal, 3, 1) \ |
+ F(RegExpExecInternal, 4, 1) \ |
\ |
/* JSON */ \ |
F(ParseJson, 1, 1) \ |
@@ -205,6 +208,10 @@ namespace internal { |
F(NewStringWrapper, 1, 1) \ |
F(NewString, 2, 1) \ |
F(TruncateString, 2, 1) \ |
+ F(StringAddInternal, 2, 1) \ |
+ F(SubStringInternal, 3, 1) \ |
+ F(StringCompareInternal, 2, 1) \ |
+ F(StringCharCodeAtInternal, 2, 1) \ |
\ |
/* Numbers */ \ |
F(NumberToRadixString, 2, 1) \ |
@@ -263,6 +270,8 @@ namespace internal { |
/* Globals */ \ |
F(CompileString, 2, 1) \ |
F(GlobalPrint, 1, 1) \ |
+ F(LogInternal, 3, 1) \ |
+ F(GetFromCacheInternal, 2, 1) \ |
\ |
/* Eval */ \ |
F(GlobalReceiver, 1, 1) \ |
@@ -600,7 +609,7 @@ namespace internal { |
RUNTIME_FUNCTION_LIST_DEBUG(F) \ |
RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) \ |
RUNTIME_FUNCTION_LIST_I18N_SUPPORT(F) \ |
- INLINE_RUNTIME_FUNCTION_LIST(F) |
+ INLINE_OPTIMIZED_FUNCTION_LIST(F) |
// ---------------------------------------------------------------------------- |
// INLINE_FUNCTION_LIST defines all inlined functions accessed |
@@ -638,15 +647,6 @@ namespace internal { |
F(GeneratorNext, 2, 1) \ |
F(GeneratorThrow, 2, 1) \ |
F(DebugBreakInOptimizedCode, 0, 1) \ |
- INLINE_RUNTIME_FUNCTION_LIST(F) |
- |
- |
-// ---------------------------------------------------------------------------- |
-// INLINE_RUNTIME_FUNCTION_LIST defines all inlined functions accessed |
-// with a native call of the form %_name from within JS code that also have |
-// a corresponding runtime function, that is called for slow cases. |
-// Entries have the form F(name, number of arguments, number of return values). |
-#define INLINE_RUNTIME_FUNCTION_LIST(F) \ |
Yang
2014/03/24 14:04:02
Entries in this list are expanded to kFoo and kInl
|
F(ClassOf, 1, 1) \ |
F(StringCharCodeAt, 2, 1) \ |
F(Log, 3, 1) \ |
@@ -656,7 +656,15 @@ namespace internal { |
F(RegExpExec, 4, 1) \ |
F(RegExpConstructResult, 3, 1) \ |
F(GetFromCache, 2, 1) \ |
- F(NumberToString, 1, 1) \ |
+ F(NumberToString, 1, 1) |
+ |
+ |
+// ---------------------------------------------------------------------------- |
+// INLINE_OPTIMIZED_FUNCTION_LIST defines all inlined functions accessed |
+// with a native call of the form %_name from within JS code that also have |
+// a corresponding runtime function, that is called from non-optimized code. |
+// Entries have the form F(name, number of arguments, number of return values). |
+#define INLINE_OPTIMIZED_FUNCTION_LIST(F) \ |
F(DoubleHi, 1, 1) \ |
F(DoubleLo, 1, 1) \ |
F(ConstructDouble, 2, 1) \ |
@@ -719,13 +727,17 @@ class Runtime : public AllStatic { |
#define F(name, nargs, ressize) kInline##name, |
INLINE_FUNCTION_LIST(F) |
#undef F |
+#define F(name, nargs, ressize) kInlineOptimized##name, |
+ INLINE_OPTIMIZED_FUNCTION_LIST(F) |
+#undef F |
kNumFunctions, |
kFirstInlineFunction = kInlineIsSmi |
}; |
enum IntrinsicType { |
RUNTIME, |
- INLINE |
+ INLINE, |
+ INLINE_OPTIMIZED |
}; |
// Intrinsic function descriptor. |