OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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_COMPILER_H_ | 5 #ifndef VM_COMPILER_H_ |
6 #define VM_COMPILER_H_ | 6 #define VM_COMPILER_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/growable_array.h" | 9 #include "vm/growable_array.h" |
10 #include "vm/runtime_entry.h" | 10 #include "vm/runtime_entry.h" |
(...skipping 21 matching lines...) Expand all Loading... |
32 | 32 |
33 // Extracts function and field symbols from the class and populates | 33 // Extracts function and field symbols from the class and populates |
34 // the class. | 34 // the class. |
35 // | 35 // |
36 // Returns Error::null() if there is no compilation error. | 36 // Returns Error::null() if there is no compilation error. |
37 static RawError* CompileClass(const Class& cls); | 37 static RawError* CompileClass(const Class& cls); |
38 | 38 |
39 // Generates code for given function and sets its code field. | 39 // Generates code for given function and sets its code field. |
40 // | 40 // |
41 // Returns Error::null() if there is no compilation error. | 41 // Returns Error::null() if there is no compilation error. |
42 static RawError* CompileFunction(Isolate* isolate, const Function& function); | 42 static RawError* CompileFunction(Thread* thread, const Function& function); |
43 | 43 |
44 // Generates optimized code for function. | 44 // Generates optimized code for function. |
45 // | 45 // |
46 // Returns Error::null() if there is no compilation error. | 46 // Returns Error::null() if there is no compilation error. |
47 static RawError* CompileOptimizedFunction( | 47 static RawError* CompileOptimizedFunction( |
48 Isolate* isolate, | 48 Thread* thread, |
49 const Function& function, | 49 const Function& function, |
50 intptr_t osr_id = Isolate::kNoDeoptId); | 50 intptr_t osr_id = Isolate::kNoDeoptId); |
51 | 51 |
52 // Generates code for given parsed function (without parsing it again) and | 52 // Generates code for given parsed function (without parsing it again) and |
53 // sets its code field. | 53 // sets its code field. |
54 // | 54 // |
55 // Returns Error::null() if there is no compilation error. | 55 // Returns Error::null() if there is no compilation error. |
56 static RawError* CompileParsedFunction(ParsedFunction* parsed_function); | 56 static RawError* CompileParsedFunction(ParsedFunction* parsed_function); |
57 | 57 |
58 // Generates and executes code for a given code fragment, e.g. a | 58 // Generates and executes code for a given code fragment, e.g. a |
(...skipping 12 matching lines...) Expand all Loading... |
71 | 71 |
72 // Eagerly compiles all functions in a class. | 72 // Eagerly compiles all functions in a class. |
73 // | 73 // |
74 // Returns Error::null() if there is no compilation error. | 74 // Returns Error::null() if there is no compilation error. |
75 static RawError* CompileAllFunctions(const Class& cls); | 75 static RawError* CompileAllFunctions(const Class& cls); |
76 }; | 76 }; |
77 | 77 |
78 } // namespace dart | 78 } // namespace dart |
79 | 79 |
80 #endif // VM_COMPILER_H_ | 80 #endif // VM_COMPILER_H_ |
OLD | NEW |