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 RUNTIME_VM_RUNTIME_ENTRY_H_ | 5 #ifndef RUNTIME_VM_RUNTIME_ENTRY_H_ |
6 #define RUNTIME_VM_RUNTIME_ENTRY_H_ | 6 #define RUNTIME_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 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 extern "C" type DLRT_##name(__VA_ARGS__); \ | 123 extern "C" type DLRT_##name(__VA_ARGS__); \ |
124 extern const RuntimeEntry k##name##RuntimeEntry( \ | 124 extern const RuntimeEntry k##name##RuntimeEntry( \ |
125 "DLRT_" #name, reinterpret_cast<RuntimeFunction>(&DLRT_##name), \ | 125 "DLRT_" #name, reinterpret_cast<RuntimeFunction>(&DLRT_##name), \ |
126 argument_count, true, false); \ | 126 argument_count, true, false); \ |
127 type DLRT_##name(__VA_ARGS__) { \ | 127 type DLRT_##name(__VA_ARGS__) { \ |
128 CHECK_STACK_ALIGNMENT; \ | 128 CHECK_STACK_ALIGNMENT; \ |
129 NoSafepointScope no_safepoint_scope; | 129 NoSafepointScope no_safepoint_scope; |
130 | 130 |
131 #define END_LEAF_RUNTIME_ENTRY } | 131 #define END_LEAF_RUNTIME_ENTRY } |
132 | 132 |
133 // TODO(rmacnak): Fix alignment issue on simarm and simmips and use | 133 // TODO(rmacnak): Fix alignment issue on simarm and use |
134 // DEFINE_LEAF_RUNTIME_ENTRY instead. | 134 // DEFINE_LEAF_RUNTIME_ENTRY instead. |
135 #define DEFINE_RAW_LEAF_RUNTIME_ENTRY(name, argument_count, is_float, func) \ | 135 #define DEFINE_RAW_LEAF_RUNTIME_ENTRY(name, argument_count, is_float, func) \ |
136 extern const RuntimeEntry k##name##RuntimeEntry( \ | 136 extern const RuntimeEntry k##name##RuntimeEntry( \ |
137 "DFLRT_" #name, func, argument_count, true, is_float) | 137 "DFLRT_" #name, func, argument_count, true, is_float) |
138 | 138 |
139 #define DECLARE_LEAF_RUNTIME_ENTRY(type, name, ...) \ | 139 #define DECLARE_LEAF_RUNTIME_ENTRY(type, name, ...) \ |
140 extern const RuntimeEntry k##name##RuntimeEntry; \ | 140 extern const RuntimeEntry k##name##RuntimeEntry; \ |
141 extern "C" type DLRT_##name(__VA_ARGS__); | 141 extern "C" type DLRT_##name(__VA_ARGS__); |
142 | 142 |
143 | 143 |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
182 const char* DeoptReasonToCString(ICData::DeoptReasonId deopt_reason); | 182 const char* DeoptReasonToCString(ICData::DeoptReasonId deopt_reason); |
183 | 183 |
184 void DeoptimizeAt(const Code& optimized_code, StackFrame* frame); | 184 void DeoptimizeAt(const Code& optimized_code, StackFrame* frame); |
185 void DeoptimizeFunctionsOnStack(); | 185 void DeoptimizeFunctionsOnStack(); |
186 | 186 |
187 double DartModulo(double a, double b); | 187 double DartModulo(double a, double b); |
188 | 188 |
189 } // namespace dart | 189 } // namespace dart |
190 | 190 |
191 #endif // RUNTIME_VM_RUNTIME_ENTRY_H_ | 191 #endif // RUNTIME_VM_RUNTIME_ENTRY_H_ |
OLD | NEW |