Index: src/builtins.h |
diff --git a/src/builtins.h b/src/builtins.h |
index a84eb311f8bccd40ba561db82226f97c3f87a7f8..b01f10b2744dc42b54517f88e67a97a060bd32e0 100644 |
--- a/src/builtins.h |
+++ b/src/builtins.h |
@@ -1,4 +1,4 @@ |
-// Copyright 2010 the V8 project authors. All rights reserved. |
+// Copyright 2011 the V8 project authors. All rights reserved. |
// Redistribution and use in source and binary forms, with or without |
// modification, are permitted provided that the following conditions are |
// met: |
@@ -67,115 +67,122 @@ enum BuiltinExtraArguments { |
// Define list of builtins implemented in assembly. |
-#define BUILTIN_LIST_A(V) \ |
- V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(JSConstructCall, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(JSConstructStubCountdown, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(JSConstructStubApi, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(LazyCompile, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(LazyRecompile, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(NotifyDeoptimized, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(NotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(NotifyOSR, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(LoadIC_Miss, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(KeyedLoadIC_Miss, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(StoreIC_Miss, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(KeyedStoreIC_Miss, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(LoadIC_Initialize, LOAD_IC, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(LoadIC_PreMonomorphic, LOAD_IC, PREMONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(LoadIC_Normal, LOAD_IC, MONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(LoadIC_ArrayLength, LOAD_IC, MONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(LoadIC_StringLength, LOAD_IC, MONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(LoadIC_StringWrapperLength, LOAD_IC, MONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(LoadIC_FunctionPrototype, LOAD_IC, MONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(LoadIC_Megamorphic, LOAD_IC, MEGAMORPHIC, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(KeyedLoadIC_Initialize, KEYED_LOAD_IC, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(KeyedLoadIC_PreMonomorphic, KEYED_LOAD_IC, PREMONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(KeyedLoadIC_Generic, KEYED_LOAD_IC, MEGAMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(KeyedLoadIC_String, KEYED_LOAD_IC, MEGAMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(KeyedLoadIC_IndexedInterceptor, KEYED_LOAD_IC, MEGAMORPHIC, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(StoreIC_Initialize, STORE_IC, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(StoreIC_ArrayLength, STORE_IC, MONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(StoreIC_Normal, STORE_IC, MONOMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(StoreIC_Megamorphic, STORE_IC, MEGAMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(StoreIC_GlobalProxy, STORE_IC, MEGAMORPHIC, \ |
- Code::kNoExtraICState) \ |
- V(StoreIC_Initialize_Strict, STORE_IC, UNINITIALIZED, \ |
- kStrictMode) \ |
- V(StoreIC_ArrayLength_Strict, STORE_IC, MONOMORPHIC, \ |
- kStrictMode) \ |
- V(StoreIC_Normal_Strict, STORE_IC, MONOMORPHIC, \ |
- kStrictMode) \ |
- V(StoreIC_Megamorphic_Strict, STORE_IC, MEGAMORPHIC, \ |
- kStrictMode) \ |
- V(StoreIC_GlobalProxy_Strict, STORE_IC, MEGAMORPHIC, \ |
- kStrictMode) \ |
- \ |
- V(KeyedStoreIC_Initialize, KEYED_STORE_IC, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(KeyedStoreIC_Generic, KEYED_STORE_IC, MEGAMORPHIC, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(KeyedStoreIC_Initialize_Strict, KEYED_STORE_IC, UNINITIALIZED, \ |
- kStrictMode) \ |
- V(KeyedStoreIC_Generic_Strict, KEYED_STORE_IC, MEGAMORPHIC, \ |
- kStrictMode) \ |
- \ |
- /* Uses KeyedLoadIC_Initialize; must be after in list. */ \ |
- V(FunctionCall, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(FunctionApply, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(ArrayCode, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- V(ArrayConstructCode, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(StringConstructCode, BUILTIN, UNINITIALIZED, \ |
- Code::kNoExtraICState) \ |
- \ |
- V(OnStackReplacement, BUILTIN, UNINITIALIZED, \ |
+#define BUILTIN_LIST_A(V) \ |
+ V(ArgumentsAdaptorTrampoline, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(JSConstructCall, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(JSConstructStubCountdown, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(JSConstructStubGeneric, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(JSConstructStubApi, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(JSEntryTrampoline, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(JSConstructEntryTrampoline, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(LazyCompile, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(LazyRecompile, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(NotifyDeoptimized, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(NotifyLazyDeoptimized, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(NotifyOSR, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ \ |
+ V(LoadIC_Miss, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedLoadIC_Miss, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedLoadIC_MissForceGeneric, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedLoadIC_Slow, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(StoreIC_Miss, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedStoreIC_Miss, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedStoreIC_MissForceGeneric, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedStoreIC_Slow, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_Initialize, LOAD_IC, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_PreMonomorphic, LOAD_IC, PREMONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_Normal, LOAD_IC, MONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_ArrayLength, LOAD_IC, MONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_StringLength, LOAD_IC, MONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_StringWrapperLength, LOAD_IC, MONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_FunctionPrototype, LOAD_IC, MONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(LoadIC_Megamorphic, LOAD_IC, MEGAMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ \ |
+ V(KeyedLoadIC_Initialize, KEYED_LOAD_IC, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedLoadIC_PreMonomorphic, KEYED_LOAD_IC, PREMONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedLoadIC_Generic, KEYED_LOAD_IC, MEGAMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedLoadIC_String, KEYED_LOAD_IC, MEGAMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedLoadIC_IndexedInterceptor, KEYED_LOAD_IC, MEGAMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ \ |
+ V(StoreIC_Initialize, STORE_IC, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(StoreIC_ArrayLength, STORE_IC, MONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(StoreIC_Normal, STORE_IC, MONOMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(StoreIC_Megamorphic, STORE_IC, MEGAMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(StoreIC_GlobalProxy, STORE_IC, MEGAMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ V(StoreIC_Initialize_Strict, STORE_IC, UNINITIALIZED, \ |
+ kStrictMode) \ |
+ V(StoreIC_ArrayLength_Strict, STORE_IC, MONOMORPHIC, \ |
+ kStrictMode) \ |
+ V(StoreIC_Normal_Strict, STORE_IC, MONOMORPHIC, \ |
+ kStrictMode) \ |
+ V(StoreIC_Megamorphic_Strict, STORE_IC, MEGAMORPHIC, \ |
+ kStrictMode) \ |
+ V(StoreIC_GlobalProxy_Strict, STORE_IC, MEGAMORPHIC, \ |
+ kStrictMode) \ |
+ \ |
+ V(KeyedStoreIC_Initialize, KEYED_STORE_IC, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(KeyedStoreIC_Generic, KEYED_STORE_IC, MEGAMORPHIC, \ |
+ Code::kNoExtraICState) \ |
+ \ |
+ V(KeyedStoreIC_Initialize_Strict, KEYED_STORE_IC, UNINITIALIZED, \ |
+ kStrictMode) \ |
+ V(KeyedStoreIC_Generic_Strict, KEYED_STORE_IC, MEGAMORPHIC, \ |
+ kStrictMode) \ |
+ \ |
+ /* Uses KeyedLoadIC_Initialize; must be after in list. */ \ |
+ V(FunctionCall, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(FunctionApply, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ \ |
+ V(ArrayCode, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ V(ArrayConstructCode, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ \ |
+ V(StringConstructCode, BUILTIN, UNINITIALIZED, \ |
+ Code::kNoExtraICState) \ |
+ \ |
+ V(OnStackReplacement, BUILTIN, UNINITIALIZED, \ |
Code::kNoExtraICState) |