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 | |
8 | namespace dart { |
9 | |
10 | // List of stubs created in the VM isolate, these stubs are shared by different |
11 | // isolates running in this dart process. |
12 | #define VM_STUB_CODE_LIST(V) \ |
13 | V(GetCStackPointer) \ |
14 | V(JumpToFrame) \ |
15 | V(RunExceptionHandler) \ |
16 | V(DeoptForRewind) \ |
17 | V(WriteBarrier) \ |
18 | V(WriteBarrierWrappers) \ |
19 | V(ArrayWriteBarrier) \ |
20 | V(AllocateArray) \ |
21 | V(AllocateMintSharedWithFPURegs) \ |
22 | V(AllocateMintSharedWithoutFPURegs) \ |
23 | V(AllocateContext) \ |
24 | V(AllocateObject) \ |
25 | V(AllocateObjectParameterized) \ |
26 | V(AllocateObjectSlow) \ |
27 | V(AllocateUnhandledException) \ |
28 | V(CloneContext) \ |
29 | V(CallToRuntime) \ |
30 | V(LazyCompile) \ |
31 | V(InterpretCall) \ |
32 | V(CallBootstrapNative) \ |
33 | V(CallNoScopeNative) \ |
34 | V(CallAutoScopeNative) \ |
35 | V(FixCallersTarget) \ |
36 | V(CallStaticFunction) \ |
37 | V(OptimizeFunction) \ |
38 | V(InvokeDartCode) \ |
39 | V(InvokeDartCodeFromBytecode) \ |
40 | V(DebugStepCheck) \ |
41 | V(SwitchableCallMiss) \ |
42 | V(MonomorphicSmiableCheck) \ |
43 | V(SingleTargetCall) \ |
44 | V(ICCallThroughCode) \ |
45 | V(MegamorphicCall) \ |
46 | V(FixAllocationStubTarget) \ |
47 | V(Deoptimize) \ |
48 | V(DeoptimizeLazyFromReturn) \ |
49 | V(DeoptimizeLazyFromThrow) \ |
50 | V(UnoptimizedIdenticalWithNumberCheck) \ |
51 | V(OptimizedIdenticalWithNumberCheck) \ |
52 | V(ICCallBreakpoint) \ |
53 | V(UnoptStaticCallBreakpoint) \ |
54 | V(RuntimeCallBreakpoint) \ |
55 | V(OneArgCheckInlineCache) \ |
56 | V(TwoArgsCheckInlineCache) \ |
57 | V(SmiAddInlineCache) \ |
58 | V(SmiLessInlineCache) \ |
59 | V(SmiEqualInlineCache) \ |
60 | V(OneArgOptimizedCheckInlineCache) \ |
61 | V(TwoArgsOptimizedCheckInlineCache) \ |
62 | V(ZeroArgsUnoptimizedStaticCall) \ |
63 | V(OneArgUnoptimizedStaticCall) \ |
64 | V(TwoArgsUnoptimizedStaticCall) \ |
65 | V(Subtype1TestCache) \ |
66 | V(Subtype2TestCache) \ |
67 | V(Subtype4TestCache) \ |
68 | V(Subtype6TestCache) \ |
69 | V(DefaultTypeTest) \ |
70 | V(DefaultNullableTypeTest) \ |
71 | V(TopTypeTypeTest) \ |
72 | V(UnreachableTypeTest) \ |
73 | V(SlowTypeTest) \ |
74 | V(LazySpecializeTypeTest) \ |
75 | V(LazySpecializeNullableTypeTest) \ |
76 | V(CallClosureNoSuchMethod) \ |
77 | V(FrameAwaitingMaterialization) \ |
78 | V(AsynchronousGapMarker) \ |
79 | V(NotLoaded) \ |
80 | V(DispatchTableNullError) \ |
81 | V(NullErrorSharedWithFPURegs) \ |
82 | V(NullErrorSharedWithoutFPURegs) \ |
83 | V(NullArgErrorSharedWithFPURegs) \ |
84 | V(NullArgErrorSharedWithoutFPURegs) \ |
85 | V(NullCastErrorSharedWithFPURegs) \ |
86 | V(NullCastErrorSharedWithoutFPURegs) \ |
87 | V(RangeErrorSharedWithFPURegs) \ |
88 | V(RangeErrorSharedWithoutFPURegs) \ |
89 | V(StackOverflowSharedWithFPURegs) \ |
90 | V(StackOverflowSharedWithoutFPURegs) \ |
91 | V(OneArgCheckInlineCacheWithExactnessCheck) \ |
92 | V(OneArgOptimizedCheckInlineCacheWithExactnessCheck) \ |
93 | V(EnterSafepoint) \ |
94 | V(ExitSafepoint) \ |
95 | V(CallNativeThroughSafepoint) \ |
96 | V(InitStaticField) \ |
97 | V(InitInstanceField) \ |
98 | V(InitLateInstanceField) \ |
99 | V(InitLateFinalInstanceField) \ |
100 | V(Throw) \ |
101 | V(ReThrow) \ |
102 | V(AssertBoolean) \ |
103 | V(InstanceOf) \ |
104 | V(InstantiateTypeArguments) \ |
105 | V(InstantiateTypeArgumentsMayShareInstantiatorTA) \ |
106 | V(InstantiateTypeArgumentsMayShareFunctionTA) \ |
107 | V(NoSuchMethodDispatcher) |
108 | |
109 | } // namespace dart |
110 | |
111 | #endif // RUNTIME_VM_STUB_CODE_LIST_H_ |
112 | |