OLD | NEW |
1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dartino 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.md file. | 3 // BSD-style license that can be found in the LICENSE.md file. |
4 | 4 |
5 #ifndef SRC_VM_NATIVE_INTERPRETER_H_ | 5 #ifndef SRC_VM_NATIVE_INTERPRETER_H_ |
6 #define SRC_VM_NATIVE_INTERPRETER_H_ | 6 #define SRC_VM_NATIVE_INTERPRETER_H_ |
7 | 7 |
8 #include "src/shared/bytecodes.h" | 8 #include "src/shared/bytecodes.h" |
9 | 9 |
10 namespace fletch { | 10 namespace dartino { |
11 | 11 |
12 class Process; | 12 class Process; |
13 class TargetYieldResult; | 13 class TargetYieldResult; |
14 | 14 |
15 // For the platforms that have a native interpreter this function is | 15 // For the platforms that have a native interpreter this function is |
16 // generated as the native interpreter entry point. The native | 16 // generated as the native interpreter entry point. The native |
17 // interpreter can bailout to the slower C++ interpreter by returning | 17 // interpreter can bailout to the slower C++ interpreter by returning |
18 // -1. | 18 // -1. |
19 extern "C" int Interpret(Process* process, | 19 extern "C" int Interpret(Process* process, |
20 TargetYieldResult* target_yield_result); | 20 TargetYieldResult* target_yield_result); |
21 | 21 |
22 extern "C" void InterpreterEntry(); | 22 extern "C" void InterpreterEntry(); |
23 | 23 |
24 extern "C" void InterpreterCoroutineEntry(); | 24 extern "C" void InterpreterCoroutineEntry(); |
25 | 25 |
26 extern "C" void InterpreterMethodEntry(); | 26 extern "C" void InterpreterMethodEntry(); |
27 | 27 |
28 | 28 |
29 void SetBytecodeBreak(Opcode opcode); | 29 void SetBytecodeBreak(Opcode opcode); |
30 | 30 |
31 void ClearBytecodeBreak(Opcode opcode); | 31 void ClearBytecodeBreak(Opcode opcode); |
32 | 32 |
33 } // namespace fletch | 33 } // namespace dartino |
34 | 34 |
35 #endif // SRC_VM_NATIVE_INTERPRETER_H_ | 35 #endif // SRC_VM_NATIVE_INTERPRETER_H_ |
OLD | NEW |