OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 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. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef VM_RUNTIME_ENTRY_H_ | 5 #ifndef VM_RUNTIME_ENTRY_H_ |
6 #define VM_RUNTIME_ENTRY_H_ | 6 #define VM_RUNTIME_ENTRY_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/flags.h" | 9 #include "vm/flags.h" |
10 #include "vm/native_arguments.h" | 10 #include "vm/native_arguments.h" |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 V(ReThrow) \ | 48 V(ReThrow) \ |
49 V(StackOverflow) \ | 49 V(StackOverflow) \ |
50 V(Throw) \ | 50 V(Throw) \ |
51 V(TraceFunctionEntry) \ | 51 V(TraceFunctionEntry) \ |
52 V(TraceFunctionExit) \ | 52 V(TraceFunctionExit) \ |
53 V(DeoptimizeMaterialize) \ | 53 V(DeoptimizeMaterialize) \ |
54 V(UpdateFieldCid) \ | 54 V(UpdateFieldCid) \ |
55 V(InitStaticField) \ | 55 V(InitStaticField) \ |
56 V(GrowRegExpStack) \ | 56 V(GrowRegExpStack) \ |
57 V(CompileFunction) \ | 57 V(CompileFunction) \ |
58 V(TestSmiSub) \ | |
59 | 58 |
60 #define LEAF_RUNTIME_ENTRY_LIST(V) \ | 59 #define LEAF_RUNTIME_ENTRY_LIST(V) \ |
61 V(void, PrintStopMessage, const char*) \ | 60 V(void, PrintStopMessage, const char*) \ |
62 V(intptr_t, DeoptimizeCopyFrame, uword) \ | 61 V(intptr_t, DeoptimizeCopyFrame, uword) \ |
63 V(void, DeoptimizeFillFrame, uword) \ | 62 V(void, DeoptimizeFillFrame, uword) \ |
64 V(void, StoreBufferBlockProcess, Thread*) \ | 63 V(void, StoreBufferBlockProcess, Thread*) \ |
65 V(intptr_t, BigintCompare, RawBigint*, RawBigint*) \ | 64 V(intptr_t, BigintCompare, RawBigint*, RawBigint*) \ |
66 V(RawObject*, TestLeafSmiAdd, RawObject*, RawObject*) \ | |
67 | 65 |
68 | 66 |
69 enum RuntimeFunctionId { | 67 enum RuntimeFunctionId { |
70 kNoRuntimeFunctionId = -1, | 68 kNoRuntimeFunctionId = -1, |
71 #define DECLARE_ENUM_VALUE(name) \ | 69 #define DECLARE_ENUM_VALUE(name) \ |
72 k##name##Id, | 70 k##name##Id, |
73 RUNTIME_ENTRY_LIST(DECLARE_ENUM_VALUE) | 71 RUNTIME_ENTRY_LIST(DECLARE_ENUM_VALUE) |
74 #undef DECLARE_ENUM_VALUE | 72 #undef DECLARE_ENUM_VALUE |
75 | 73 |
76 #define DECLARE_LEAF_ENUM_VALUE(type, name, ...) \ | 74 #define DECLARE_LEAF_ENUM_VALUE(type, name, ...) \ |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 #define CHECK_LEAF_RUNTIME_ADDRESS(type, name, ...) \ | 210 #define CHECK_LEAF_RUNTIME_ADDRESS(type, name, ...) \ |
213 if (address == reinterpret_cast<uword>(&DLRT_##name)) return k##name##Id; | 211 if (address == reinterpret_cast<uword>(&DLRT_##name)) return k##name##Id; |
214 LEAF_RUNTIME_ENTRY_LIST(CHECK_LEAF_RUNTIME_ADDRESS) | 212 LEAF_RUNTIME_ENTRY_LIST(CHECK_LEAF_RUNTIME_ADDRESS) |
215 #undef CHECK_LEAF_RUNTIME_ADDRESS | 213 #undef CHECK_LEAF_RUNTIME_ADDRESS |
216 return kNoRuntimeFunctionId; | 214 return kNoRuntimeFunctionId; |
217 } | 215 } |
218 | 216 |
219 } // namespace dart | 217 } // namespace dart |
220 | 218 |
221 #endif // VM_RUNTIME_ENTRY_H_ | 219 #endif // VM_RUNTIME_ENTRY_H_ |
OLD | NEW |