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 typedef void Recompile(Element element); | 5 typedef void Recompile(Element element); |
6 | 6 |
7 class ReturnInfo { | 7 class ReturnInfo { |
8 HType returnType; | 8 HType returnType; |
9 List<Element> compiledFunctions; | 9 List<Element> compiledFunctions; |
10 | 10 |
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 return <CompilerTask>[builder, optimizer, generator, emitter]; | 314 return <CompilerTask>[builder, optimizer, generator, emitter]; |
315 } | 315 } |
316 | 316 |
317 JavaScriptBackend(Compiler compiler, bool generateSourceMap) | 317 JavaScriptBackend(Compiler compiler, bool generateSourceMap) |
318 : emitter = new CodeEmitterTask(compiler, generateSourceMap), | 318 : emitter = new CodeEmitterTask(compiler, generateSourceMap), |
319 fieldInitializers = new Map<Element, Map<Element, HType>>(), | 319 fieldInitializers = new Map<Element, Map<Element, HType>>(), |
320 fieldConstructorSetters = new Map<Element, Map<Element, HType>>(), | 320 fieldConstructorSetters = new Map<Element, Map<Element, HType>>(), |
321 fieldSettersType = new Map<Element, Map<Element, HType>>(), | 321 fieldSettersType = new Map<Element, Map<Element, HType>>(), |
322 returnInfo = new Map<Element, ReturnInfo>(), | 322 returnInfo = new Map<Element, ReturnInfo>(), |
323 invalidateAfterCodegen = new List<Element>(), | 323 invalidateAfterCodegen = new List<Element>(), |
324 super(compiler) { | 324 super(compiler, constantSystem: JAVA_SCRIPT_CONSTANT_SYSTEM) { |
325 builder = new SsaBuilderTask(this); | 325 builder = new SsaBuilderTask(this); |
326 optimizer = new SsaOptimizerTask(this); | 326 optimizer = new SsaOptimizerTask(this); |
327 generator = new SsaCodeGeneratorTask(this); | 327 generator = new SsaCodeGeneratorTask(this); |
328 argumentTypes = new ArgumentTypesRegistry(this); | 328 argumentTypes = new ArgumentTypesRegistry(this); |
329 } | 329 } |
330 | 330 |
331 Element get cyclicThrowHelper() { | 331 Element get cyclicThrowHelper() { |
332 return compiler.findHelper(const SourceString("throwCyclicInit")); | 332 return compiler.findHelper(const SourceString("throwCyclicInit")); |
333 } | 333 } |
334 | 334 |
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
594 return const SourceString('listSuperTypeCheck'); | 594 return const SourceString('listSuperTypeCheck'); |
595 } | 595 } |
596 } else if (nativeCheck) { | 596 } else if (nativeCheck) { |
597 return const SourceString('callTypeCheck'); | 597 return const SourceString('callTypeCheck'); |
598 } else { | 598 } else { |
599 return const SourceString('propertyTypeCheck'); | 599 return const SourceString('propertyTypeCheck'); |
600 } | 600 } |
601 } | 601 } |
602 } | 602 } |
603 } | 603 } |
OLD | NEW |