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" |
11 #include "vm/thread_pool.h" | 11 #include "vm/thread_pool.h" |
12 | 12 |
13 namespace dart { | 13 namespace dart { |
14 | 14 |
15 // Forward declarations. | 15 // Forward declarations. |
16 class Class; | 16 class Class; |
17 class Code; | 17 class Code; |
18 class Function; | 18 class Function; |
19 class Library; | 19 class Library; |
20 class ParsedFunction; | 20 class ParsedFunction; |
21 class RawInstance; | 21 class RawInstance; |
22 class Script; | 22 class Script; |
23 class SequenceNode; | 23 class SequenceNode; |
24 | 24 |
25 class Compiler : public AllStatic { | 25 class Compiler : public AllStatic { |
26 public: | 26 public: |
27 static const intptr_t kNoOSRDeoptId = Thread::kNoDeoptId; | 27 static const intptr_t kNoOSRDeoptId = Thread::kNoDeoptId; |
28 | 28 |
| 29 static bool IsBackgroundCompilation(); |
| 30 |
29 // Extracts top level entities from the script and populates | 31 // Extracts top level entities from the script and populates |
30 // the class dictionary of the library. | 32 // the class dictionary of the library. |
31 // | 33 // |
32 // Returns Error::null() if there is no compilation error. | 34 // Returns Error::null() if there is no compilation error. |
33 static RawError* Compile(const Library& library, const Script& script); | 35 static RawError* Compile(const Library& library, const Script& script); |
34 | 36 |
35 // Extracts function and field symbols from the class and populates | 37 // Extracts function and field symbols from the class and populates |
36 // the class. | 38 // the class. |
37 // | 39 // |
38 // Returns Error::null() if there is no compilation error. | 40 // Returns Error::null() if there is no compilation error. |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
152 | 154 |
153 // Lightweight access to length of compiler queue. | 155 // Lightweight access to length of compiler queue. |
154 intptr_t function_queue_length_; | 156 intptr_t function_queue_length_; |
155 | 157 |
156 DISALLOW_IMPLICIT_CONSTRUCTORS(BackgroundCompiler); | 158 DISALLOW_IMPLICIT_CONSTRUCTORS(BackgroundCompiler); |
157 }; | 159 }; |
158 | 160 |
159 } // namespace dart | 161 } // namespace dart |
160 | 162 |
161 #endif // VM_COMPILER_H_ | 163 #endif // VM_COMPILER_H_ |
OLD | NEW |