| 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 1200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1211 | 1211 |
| 1212 RawFunction* Precompiler::CompileStaticInitializer(const Field& field, | 1212 RawFunction* Precompiler::CompileStaticInitializer(const Field& field, |
| 1213 bool compute_type) { | 1213 bool compute_type) { |
| 1214 ASSERT(field.is_static()); | 1214 ASSERT(field.is_static()); |
| 1215 Thread* thread = Thread::Current(); | 1215 Thread* thread = Thread::Current(); |
| 1216 StackZone stack_zone(thread); | 1216 StackZone stack_zone(thread); |
| 1217 Zone* zone = stack_zone.GetZone(); | 1217 Zone* zone = stack_zone.GetZone(); |
| 1218 | 1218 |
| 1219 ParsedFunction* parsed_function; | 1219 ParsedFunction* parsed_function; |
| 1220 // Check if this field is coming from the Kernel binary. | 1220 // Check if this field is coming from the Kernel binary. |
| 1221 if (field.kernel_field() != NULL) { | 1221 if (field.kernel_offset() > 0) { |
| 1222 parsed_function = kernel::ParseStaticFieldInitializer(zone, field); | 1222 parsed_function = kernel::ParseStaticFieldInitializer(zone, field); |
| 1223 } else { | 1223 } else { |
| 1224 parsed_function = Parser::ParseStaticFieldInitializer(field); | 1224 parsed_function = Parser::ParseStaticFieldInitializer(field); |
| 1225 parsed_function->AllocateVariables(); | 1225 parsed_function->AllocateVariables(); |
| 1226 } | 1226 } |
| 1227 | 1227 |
| 1228 | 1228 |
| 1229 DartPrecompilationPipeline pipeline(zone); | 1229 DartPrecompilationPipeline pipeline(zone); |
| 1230 PrecompileParsedFunctionHelper helper(/* precompiler = */ NULL, | 1230 PrecompileParsedFunctionHelper helper(/* precompiler = */ NULL, |
| 1231 parsed_function, | 1231 parsed_function, |
| (...skipping 2131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3363 | 3363 |
| 3364 ASSERT(FLAG_precompiled_mode); | 3364 ASSERT(FLAG_precompiled_mode); |
| 3365 const bool optimized = function.IsOptimizable(); // False for natives. | 3365 const bool optimized = function.IsOptimizable(); // False for natives. |
| 3366 DartPrecompilationPipeline pipeline(zone, field_type_map); | 3366 DartPrecompilationPipeline pipeline(zone, field_type_map); |
| 3367 return PrecompileFunctionHelper(precompiler, &pipeline, function, optimized); | 3367 return PrecompileFunctionHelper(precompiler, &pipeline, function, optimized); |
| 3368 } | 3368 } |
| 3369 | 3369 |
| 3370 #endif // DART_PRECOMPILER | 3370 #endif // DART_PRECOMPILER |
| 3371 | 3371 |
| 3372 } // namespace dart | 3372 } // namespace dart |
| OLD | NEW |