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 #include "vm/precompiler.h" | 5 #include "vm/precompiler.h" |
6 | 6 |
7 #include "vm/aot_optimizer.h" | 7 #include "vm/aot_optimizer.h" |
8 #include "vm/assembler.h" | 8 #include "vm/assembler.h" |
9 #include "vm/ast_printer.h" | 9 #include "vm/ast_printer.h" |
10 #include "vm/branch_optimizer.h" | 10 #include "vm/branch_optimizer.h" |
(...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
359 | 359 |
360 // Allocated from C++. | 360 // Allocated from C++. |
361 Class& cls = Class::Handle(Z); | 361 Class& cls = Class::Handle(Z); |
362 for (intptr_t cid = kInstanceCid; cid < kNumPredefinedCids; cid++) { | 362 for (intptr_t cid = kInstanceCid; cid < kNumPredefinedCids; cid++) { |
363 ASSERT(isolate()->class_table()->IsValidIndex(cid)); | 363 ASSERT(isolate()->class_table()->IsValidIndex(cid)); |
364 if (!isolate()->class_table()->HasValidClassAt(cid)) { | 364 if (!isolate()->class_table()->HasValidClassAt(cid)) { |
365 continue; | 365 continue; |
366 } | 366 } |
367 if ((cid == kDynamicCid) || | 367 if ((cid == kDynamicCid) || |
368 (cid == kVoidCid) || | 368 (cid == kVoidCid) || |
369 (cid == kFreeListElement)) { | 369 (cid == kFreeListElement) || |
| 370 (cid == kForwardingCorpse)) { |
370 continue; | 371 continue; |
371 } | 372 } |
372 cls = isolate()->class_table()->At(cid); | 373 cls = isolate()->class_table()->At(cid); |
373 AddInstantiatedClass(cls); | 374 AddInstantiatedClass(cls); |
374 } | 375 } |
375 | 376 |
376 Dart_QualifiedFunctionName vm_entry_points[] = { | 377 Dart_QualifiedFunctionName vm_entry_points[] = { |
377 // Functions | 378 // Functions |
378 { "dart:async", "::", "_setScheduleImmediateClosure" }, | 379 { "dart:async", "::", "_setScheduleImmediateClosure" }, |
379 { "dart:core", "::", "_completeDeferredLoads" }, | 380 { "dart:core", "::", "_completeDeferredLoads" }, |
(...skipping 2466 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2846 CompilationPipeline::New(thread->zone(), function); | 2847 CompilationPipeline::New(thread->zone(), function); |
2847 | 2848 |
2848 ASSERT(FLAG_precompiled_mode); | 2849 ASSERT(FLAG_precompiled_mode); |
2849 const bool optimized = function.IsOptimizable(); // False for natives. | 2850 const bool optimized = function.IsOptimizable(); // False for natives. |
2850 return PrecompileFunctionHelper(pipeline, function, optimized); | 2851 return PrecompileFunctionHelper(pipeline, function, optimized); |
2851 } | 2852 } |
2852 | 2853 |
2853 #endif // DART_PRECOMPILER | 2854 #endif // DART_PRECOMPILER |
2854 | 2855 |
2855 } // namespace dart | 2856 } // namespace dart |
OLD | NEW |