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

Unified Diff: src/code-stubs.h

Issue 2193163002: [stubs] Classify and categorize remaining Hydrogen stubs (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Rebase Created 4 years, 5 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 | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/code-stubs.h
diff --git a/src/code-stubs.h b/src/code-stubs.h
index debf02896f0ca4ffaec475667940406861b81a82..14c9a65ee0ccf8a752c9dda4f49b1c68da5db8da 100644
--- a/src/code-stubs.h
+++ b/src/code-stubs.h
@@ -19,141 +19,158 @@ namespace v8 {
namespace internal {
// List of code stubs used on all platforms.
-#define CODE_STUB_LIST_ALL_PLATFORMS(V) \
- /* PlatformCodeStubs */ \
- V(ArrayConstructor) \
- V(BinaryOpICWithAllocationSite) \
- V(CallApiCallback) \
- V(CallApiGetter) \
- V(CallConstruct) \
- V(CallIC) \
- V(CEntry) \
- V(CompareIC) \
- V(DoubleToI) \
- V(FunctionPrototype) \
- V(InternalArrayConstructor) \
- V(JSEntry) \
- V(KeyedLoadICTrampoline) \
- V(LoadICTrampoline) \
- V(LoadGlobalICTrampoline) \
- V(CallICTrampoline) \
- V(LoadIndexedString) \
- V(MathPow) \
- V(ProfileEntryHook) \
- V(RecordWrite) \
- V(RegExpExec) \
- V(StoreBufferOverflow) \
- V(StoreElement) \
- V(StubFailureTrampoline) \
- V(SubString) \
- V(ToString) \
- V(ToName) \
- V(StoreICTrampoline) \
- V(KeyedStoreICTrampoline) \
- V(StoreIC) \
- V(KeyedStoreIC) \
- V(KeyedLoadIC) \
- V(LoadIC) \
- V(LoadGlobalIC) \
- V(FastNewObject) \
- V(FastNewRestParameter) \
- V(FastNewSloppyArguments) \
- V(FastNewStrictArguments) \
- /* HydrogenCodeStubs */ \
- V(BinaryOpIC) \
- V(BinaryOpWithAllocationSite) \
- V(ElementsTransitionAndStore) \
- V(FastArrayPush) \
- V(FastCloneRegExp) \
- V(FastCloneShallowArray) \
- V(FastFunctionBind) \
- V(GrowArrayElements) \
- V(KeyedLoadGeneric) \
- V(LoadScriptContextField) \
- V(LoadDictionaryElement) \
- V(NameDictionaryLookup) \
- V(NumberToString) \
- V(ToObject) \
- V(Typeof) \
- V(RegExpConstructResult) \
- V(StoreFastElement) \
- V(StoreGlobalViaContext) \
- V(StoreScriptContextField) \
- V(StringAdd) \
- V(ToBooleanIC) \
- V(TransitionElementsKind) \
- /* TurboFanCodeStubs */ \
- V(AllocateHeapNumber) \
- V(AllocateFloat32x4) \
- V(AllocateInt32x4) \
- V(AllocateUint32x4) \
- V(AllocateBool32x4) \
- V(AllocateInt16x8) \
- V(AllocateUint16x8) \
- V(AllocateBool16x8) \
- V(AllocateInt8x16) \
- V(AllocateUint8x16) \
- V(AllocateBool8x16) \
- V(ArrayNoArgumentConstructor) \
- V(ArraySingleArgumentConstructor) \
- V(ArrayNArgumentsConstructor) \
- V(CreateAllocationSite) \
- V(CreateWeakCell) \
- V(StringLength) \
- V(Add) \
- V(Subtract) \
- V(Multiply) \
- V(Divide) \
- V(Modulus) \
- V(ShiftRight) \
- V(ShiftRightLogical) \
- V(ShiftLeft) \
- V(BitwiseAnd) \
- V(BitwiseOr) \
- V(BitwiseXor) \
- V(Inc) \
- V(InternalArrayNoArgumentConstructor) \
- V(InternalArraySingleArgumentConstructor) \
- V(Dec) \
- V(FastCloneShallowObject) \
- V(FastNewClosure) \
- V(FastNewFunctionContext) \
- V(InstanceOf) \
- V(LessThan) \
- V(LessThanOrEqual) \
- V(GreaterThan) \
- V(GreaterThanOrEqual) \
- V(Equal) \
- V(NotEqual) \
- V(StrictEqual) \
- V(StrictNotEqual) \
- V(StringEqual) \
- V(StringNotEqual) \
- V(StringLessThan) \
- V(StringLessThanOrEqual) \
- V(StringGreaterThan) \
- V(StringGreaterThanOrEqual) \
- V(ToInteger) \
- V(ToLength) \
- V(HasProperty) \
- V(ForInFilter) \
- V(GetProperty) \
- V(LoadICTrampolineTF) \
- V(LoadICTF) \
- V(KeyedLoadICTrampolineTF) \
- V(KeyedLoadICTF) \
- /* IC Handler stubs */ \
- V(KeyedLoadSloppyArguments) \
- V(KeyedStoreSloppyArguments) \
- V(LoadApiGetter) \
- V(LoadConstant) \
- V(LoadFastElement) \
- V(LoadField) \
- V(LoadIndexedInterceptor) \
- V(StoreField) \
- V(StoreGlobal) \
- V(StoreInterceptor) \
- V(StoreTransition)
+#define CODE_STUB_LIST_ALL_PLATFORMS(V) \
+ /* --- PlatformCodeStubs --- */ \
+ V(ArrayConstructor) \
+ V(BinaryOpICWithAllocationSite) \
+ V(CallApiCallback) \
+ V(CallApiGetter) \
+ V(CallConstruct) \
+ V(CallIC) \
+ V(CEntry) \
+ V(CompareIC) \
+ V(DoubleToI) \
+ V(FunctionPrototype) \
+ V(InternalArrayConstructor) \
+ V(JSEntry) \
+ V(LoadIndexedString) \
+ V(MathPow) \
+ V(ProfileEntryHook) \
+ V(RecordWrite) \
+ V(RegExpExec) \
+ V(StoreBufferOverflow) \
+ V(StoreElement) \
+ V(SubString) \
+ V(ToString) \
+ V(ToName) \
+ V(StoreIC) \
+ V(KeyedStoreIC) \
+ V(KeyedLoadIC) \
+ V(LoadIC) \
+ V(LoadGlobalIC) \
+ V(FastNewObject) \
+ V(FastNewRestParameter) \
+ V(FastNewSloppyArguments) \
+ V(FastNewStrictArguments) \
+ V(NameDictionaryLookup) \
+ /* This can be removed once there are no */ \
+ /* more deopting Hydrogen stubs. */ \
+ V(StubFailureTrampoline) \
+ /* These are only called from FCG */ \
+ /* They can be removed when only the TF */ \
+ /* version of the corresponding stub is */ \
+ /* used universally */ \
+ V(CallICTrampoline) \
+ V(LoadICTrampoline) \
+ V(KeyedLoadICTrampoline) \
+ V(KeyedStoreICTrampoline) \
+ V(StoreICTrampoline) \
+ /* --- HydrogenCodeStubs --- */ \
+ V(ElementsTransitionAndStore) \
+ V(FastCloneRegExp) \
+ V(FastCloneShallowArray) \
+ V(GrowArrayElements) \
+ V(NumberToString) \
+ V(StringAdd) \
+ V(ToObject) \
+ V(Typeof) \
+ /* These builtins w/ JS linkage are */ \
+ /* just fast-cases of C++ builtins. They */ \
+ /* require varg support from TF */ \
+ V(FastArrayPush) \
+ V(FastFunctionBind) \
+ /* These will be ported/eliminated */ \
+ /* as part of the new IC system, ask */ \
+ /* ishell before doing anything */ \
+ V(KeyedLoadGeneric) \
+ V(KeyedLoadSloppyArguments) \
+ V(KeyedStoreSloppyArguments) \
+ V(LoadConstant) \
+ V(LoadDictionaryElement) \
+ V(LoadFastElement) \
+ V(LoadField) \
+ V(LoadScriptContextField) \
+ V(StoreFastElement) \
+ V(StoreField) \
+ V(StoreGlobal) \
+ V(StoreScriptContextField) \
+ V(StoreTransition) \
+ /* These should never be ported to TF */ \
+ /* because they are either used only by */ \
+ /* FCG/Crankshaft or are deprecated */ \
+ V(BinaryOpIC) \
+ V(BinaryOpWithAllocationSite) \
+ V(ToBooleanIC) \
+ V(RegExpConstructResult) \
+ V(TransitionElementsKind) \
+ V(StoreGlobalViaContext) \
+ /* --- TurboFanCodeStubs --- */ \
+ V(AllocateHeapNumber) \
+ V(AllocateFloat32x4) \
+ V(AllocateInt32x4) \
+ V(AllocateUint32x4) \
+ V(AllocateBool32x4) \
+ V(AllocateInt16x8) \
+ V(AllocateUint16x8) \
+ V(AllocateBool16x8) \
+ V(AllocateInt8x16) \
+ V(AllocateUint8x16) \
+ V(AllocateBool8x16) \
+ V(ArrayNoArgumentConstructor) \
+ V(ArraySingleArgumentConstructor) \
+ V(ArrayNArgumentsConstructor) \
+ V(CreateAllocationSite) \
+ V(CreateWeakCell) \
+ V(StringLength) \
+ V(Add) \
+ V(Subtract) \
+ V(Multiply) \
+ V(Divide) \
+ V(Modulus) \
+ V(ShiftRight) \
+ V(ShiftRightLogical) \
+ V(ShiftLeft) \
+ V(BitwiseAnd) \
+ V(BitwiseOr) \
+ V(BitwiseXor) \
+ V(Inc) \
+ V(InternalArrayNoArgumentConstructor) \
+ V(InternalArraySingleArgumentConstructor) \
+ V(Dec) \
+ V(FastCloneShallowObject) \
+ V(FastNewClosure) \
+ V(FastNewFunctionContext) \
+ V(InstanceOf) \
+ V(LessThan) \
+ V(LessThanOrEqual) \
+ V(GreaterThan) \
+ V(GreaterThanOrEqual) \
+ V(Equal) \
+ V(NotEqual) \
+ V(StrictEqual) \
+ V(StrictNotEqual) \
+ V(StringEqual) \
+ V(StringNotEqual) \
+ V(StringLessThan) \
+ V(StringLessThanOrEqual) \
+ V(StringGreaterThan) \
+ V(StringGreaterThanOrEqual) \
+ V(ToInteger) \
+ V(ToLength) \
+ V(HasProperty) \
+ V(ForInFilter) \
+ V(GetProperty) \
+ V(LoadICTF) \
+ V(KeyedLoadICTF) \
+ V(StoreInterceptor) \
+ V(LoadApiGetter) \
+ V(LoadIndexedInterceptor) \
+ /* These are only called from FGC and */ \
+ /* can be removed when we use ignition */ \
+ /* only */ \
+ V(LoadICTrampolineTF) \
+ V(LoadGlobalICTrampoline) \
+ V(KeyedLoadICTrampolineTF)
// List of code stubs only used on ARM 32 bits platforms.
#if V8_TARGET_ARCH_ARM
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698