| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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_PRECOMPILER_H_ | 5 #ifndef VM_PRECOMPILER_H_ |
| 6 #define VM_PRECOMPILER_H_ | 6 #define VM_PRECOMPILER_H_ |
| 7 | 7 |
| 8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
| 9 #include "vm/hash_map.h" | 9 #include "vm/hash_map.h" |
| 10 #include "vm/object.h" | 10 #include "vm/object.h" |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 172 void AddClosureCall(const ICData& call_site); | 172 void AddClosureCall(const ICData& call_site); |
| 173 void AddField(const Field& field); | 173 void AddField(const Field& field); |
| 174 void AddFunction(const Function& function); | 174 void AddFunction(const Function& function); |
| 175 void AddInstantiatedClass(const Class& cls); | 175 void AddInstantiatedClass(const Class& cls); |
| 176 void AddSelector(const String& selector); | 176 void AddSelector(const String& selector); |
| 177 bool IsSent(const String& selector); | 177 bool IsSent(const String& selector); |
| 178 | 178 |
| 179 void ProcessFunction(const Function& function); | 179 void ProcessFunction(const Function& function); |
| 180 void CheckForNewDynamicFunctions(); | 180 void CheckForNewDynamicFunctions(); |
| 181 | 181 |
| 182 void DropUncompiledFunctions(); | 182 void DropFunctions(); |
| 183 void DropFields(); | 183 void DropFields(); |
| 184 void CollectDynamicFunctionNames(); | |
| 185 void BindStaticCalls(); | 184 void BindStaticCalls(); |
| 186 void DedupStackmaps(); | 185 void DedupStackmaps(); |
| 187 void DedupStackmapLists(); | 186 void DedupStackmapLists(); |
| 188 void ResetPrecompilerState(); | 187 void ResetPrecompilerState(); |
| 189 | 188 |
| 189 void CollectDynamicFunctionNames(); |
| 190 |
| 190 class FunctionVisitor : public ValueObject { | 191 class FunctionVisitor : public ValueObject { |
| 191 public: | 192 public: |
| 192 virtual ~FunctionVisitor() {} | 193 virtual ~FunctionVisitor() {} |
| 193 virtual void VisitFunction(const Function& function) = 0; | 194 virtual void VisitFunction(const Function& function) = 0; |
| 194 }; | 195 }; |
| 195 | 196 |
| 196 void VisitFunctions(FunctionVisitor* visitor); | 197 void VisitFunctions(FunctionVisitor* visitor); |
| 197 | 198 |
| 198 void FinalizeAllClasses(); | 199 void FinalizeAllClasses(); |
| 199 | 200 |
| (...skipping 18 matching lines...) Expand all Loading... |
| 218 const GrowableObjectArray& pending_functions_; | 219 const GrowableObjectArray& pending_functions_; |
| 219 SymbolSet sent_selectors_; | 220 SymbolSet sent_selectors_; |
| 220 FunctionSet enqueued_functions_; | 221 FunctionSet enqueued_functions_; |
| 221 FieldSet fields_to_retain_; | 222 FieldSet fields_to_retain_; |
| 222 Error& error_; | 223 Error& error_; |
| 223 }; | 224 }; |
| 224 | 225 |
| 225 } // namespace dart | 226 } // namespace dart |
| 226 | 227 |
| 227 #endif // VM_PRECOMPILER_H_ | 228 #endif // VM_PRECOMPILER_H_ |
| OLD | NEW |