Flutter Engine
The Flutter Engine
stub_code_list.h
Go to the documentation of this file.
1// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
2// for details. All rights reserved. Use of this source code is governed by a
3// BSD-style license that can be found in the LICENSE file.
4
5#ifndef RUNTIME_VM_STUB_CODE_LIST_H_
6#define RUNTIME_VM_STUB_CODE_LIST_H_
7
8namespace dart {
9
10#define VM_TYPE_TESTING_STUB_CODE_LIST(V) \
11 V(DefaultTypeTest) \
12 V(DefaultNullableTypeTest) \
13 V(TopTypeTypeTest) \
14 V(UnreachableTypeTest) \
15 V(TypeParameterTypeTest) \
16 V(NullableTypeParameterTypeTest) \
17 V(SlowTypeTest) \
18 V(LazySpecializeTypeTest) \
19 V(LazySpecializeNullableTypeTest)
20
21// List of stubs created in the VM isolate, these stubs are shared by different
22// isolates running in this dart process.
23#define VM_STUB_CODE_LIST(V) \
24 V(GetCStackPointer) \
25 V(JumpToFrame) \
26 V(RunExceptionHandler) \
27 V(DeoptForRewind) \
28 V(WriteBarrier) \
29 V(WriteBarrierWrappers) \
30 V(ArrayWriteBarrier) \
31 V(AllocateArray) \
32 V(AllocateMint) \
33 V(AllocateDouble) \
34 V(AllocateFloat32x4) \
35 V(AllocateFloat64x2) \
36 V(AllocateInt32x4) \
37 V(AllocateInt8Array) \
38 V(AllocateUint8Array) \
39 V(AllocateUint8ClampedArray) \
40 V(AllocateInt16Array) \
41 V(AllocateUint16Array) \
42 V(AllocateInt32Array) \
43 V(AllocateUint32Array) \
44 V(AllocateInt64Array) \
45 V(AllocateUint64Array) \
46 V(AllocateFloat32Array) \
47 V(AllocateFloat64Array) \
48 V(AllocateFloat32x4Array) \
49 V(AllocateInt32x4Array) \
50 V(AllocateFloat64x2Array) \
51 V(AllocateMintSharedWithFPURegs) \
52 V(AllocateMintSharedWithoutFPURegs) \
53 V(AllocateClosure) \
54 V(AllocateClosureGeneric) \
55 V(AllocateClosureTA) \
56 V(AllocateClosureTAGeneric) \
57 V(AllocateContext) \
58 V(AllocateGrowableArray) \
59 V(AllocateObject) \
60 V(AllocateObjectParameterized) \
61 V(AllocateObjectSlow) \
62 V(AllocateRecord) \
63 V(AllocateRecord2) \
64 V(AllocateRecord2Named) \
65 V(AllocateRecord3) \
66 V(AllocateRecord3Named) \
67 V(AllocateUnhandledException) \
68 V(BoxDouble) \
69 V(BoxFloat32x4) \
70 V(BoxFloat64x2) \
71 V(CloneContext) \
72 V(CallToRuntime) \
73 V(LazyCompile) \
74 V(CallBootstrapNative) \
75 V(CallNoScopeNative) \
76 V(CallAutoScopeNative) \
77 V(FixCallersTarget) \
78 V(CallStaticFunction) \
79 V(OptimizeFunction) \
80 V(InvokeDartCode) \
81 V(DebugStepCheck) \
82 V(SwitchableCallMiss) \
83 V(MonomorphicSmiableCheck) \
84 V(SingleTargetCall) \
85 V(ICCallThroughCode) \
86 V(MegamorphicCall) \
87 V(FixAllocationStubTarget) \
88 V(FixParameterizedAllocationStubTarget) \
89 V(Deoptimize) \
90 V(DeoptimizeLazyFromReturn) \
91 V(DeoptimizeLazyFromThrow) \
92 V(UnoptimizedIdenticalWithNumberCheck) \
93 V(OptimizedIdenticalWithNumberCheck) \
94 V(ICCallBreakpoint) \
95 V(UnoptStaticCallBreakpoint) \
96 V(RuntimeCallBreakpoint) \
97 V(OneArgCheckInlineCache) \
98 V(TwoArgsCheckInlineCache) \
99 V(SmiAddInlineCache) \
100 V(SmiLessInlineCache) \
101 V(SmiEqualInlineCache) \
102 V(OneArgOptimizedCheckInlineCache) \
103 V(TwoArgsOptimizedCheckInlineCache) \
104 V(ZeroArgsUnoptimizedStaticCall) \
105 V(OneArgUnoptimizedStaticCall) \
106 V(TwoArgsUnoptimizedStaticCall) \
107 V(AssertSubtype) \
108 V(AssertAssignable) \
109 V(TypeIsTopTypeForSubtyping) \
110 V(NullIsAssignableToType) \
111 V(Subtype1TestCache) \
112 V(Subtype2TestCache) \
113 V(Subtype3TestCache) \
114 V(Subtype4TestCache) \
115 V(Subtype6TestCache) \
116 V(Subtype7TestCache) \
117 VM_TYPE_TESTING_STUB_CODE_LIST(V) \
118 V(CallClosureNoSuchMethod) \
119 V(FrameAwaitingMaterialization) \
120 V(AsynchronousGapMarker) \
121 V(NotLoaded) \
122 V(DispatchTableNullError) \
123 V(LateInitializationErrorSharedWithFPURegs) \
124 V(LateInitializationErrorSharedWithoutFPURegs) \
125 V(NullErrorSharedWithFPURegs) \
126 V(NullErrorSharedWithoutFPURegs) \
127 V(NullArgErrorSharedWithFPURegs) \
128 V(NullArgErrorSharedWithoutFPURegs) \
129 V(NullCastErrorSharedWithFPURegs) \
130 V(NullCastErrorSharedWithoutFPURegs) \
131 V(RangeErrorSharedWithFPURegs) \
132 V(RangeErrorSharedWithoutFPURegs) \
133 V(WriteErrorSharedWithFPURegs) \
134 V(WriteErrorSharedWithoutFPURegs) \
135 V(StackOverflowSharedWithFPURegs) \
136 V(StackOverflowSharedWithoutFPURegs) \
137 V(DoubleToInteger) \
138 V(OneArgCheckInlineCacheWithExactnessCheck) \
139 V(OneArgOptimizedCheckInlineCacheWithExactnessCheck) \
140 V(EnterSafepoint) \
141 V(ExitSafepoint) \
142 V(ExitSafepointIgnoreUnwindInProgress) \
143 V(CallNativeThroughSafepoint) \
144 V(FfiCallbackTrampoline) \
145 V(InitStaticField) \
146 V(InitLateStaticField) \
147 V(InitLateFinalStaticField) \
148 V(InitInstanceField) \
149 V(InitLateInstanceField) \
150 V(InitLateFinalInstanceField) \
151 V(InitSharedLateStaticField) \
152 V(InitSharedLateFinalStaticField) \
153 V(Throw) \
154 V(ReThrow) \
155 V(AssertBoolean) \
156 V(InstanceOf) \
157 V(InstantiateType) \
158 V(InstantiateTypeNonNullableClassTypeParameter) \
159 V(InstantiateTypeNullableClassTypeParameter) \
160 V(InstantiateTypeNonNullableFunctionTypeParameter) \
161 V(InstantiateTypeNullableFunctionTypeParameter) \
162 V(InstantiateTypeArguments) \
163 V(InstantiateTypeArgumentsMayShareInstantiatorTA) \
164 V(InstantiateTypeArgumentsMayShareFunctionTA) \
165 V(NoSuchMethodDispatcher) \
166 V(Await) \
167 V(AwaitWithTypeCheck) \
168 V(InitAsync) \
169 V(Resume) \
170 V(ReturnAsync) \
171 V(ReturnAsyncNotFuture) \
172 V(InitAsyncStar) \
173 V(YieldAsyncStar) \
174 V(ReturnAsyncStar) \
175 V(InitSyncStar) \
176 V(SuspendSyncStarAtStart) \
177 V(SuspendSyncStarAtYield) \
178 V(AsyncExceptionHandler) \
179 V(CloneSuspendState) \
180 V(FfiAsyncCallbackSend) \
181 V(UnknownDartCode)
182
183} // namespace dart
184
185#endif // RUNTIME_VM_STUB_CODE_LIST_H_
Definition: dart_vm.cc:33