Index: lib/compiler/implementation/compiler.dart |
diff --git a/lib/compiler/implementation/compiler.dart b/lib/compiler/implementation/compiler.dart |
index 6b130e442bb074e78040abd5a662f3bb11e6d8d2..79e936668248c2a67fd6ecb0cc9d506efd0254fd 100644 |
--- a/lib/compiler/implementation/compiler.dart |
+++ b/lib/compiler/implementation/compiler.dart |
@@ -25,8 +25,8 @@ class WorkItem { |
bool isAnalyzed() => resolutionTree !== null; |
String run(Compiler compiler, Enqueuer world) { |
- CodeBlock codeBlock = world.universe.generatedCode[element]; |
- if (codeBlock !== null) return codeBlock.code; |
+ CodeBuffer codeBuffer = world.universe.generatedCode[element]; |
+ if (codeBuffer !== null) return codeBuffer.toString(); |
resolutionTree = compiler.analyze(this, world); |
return compiler.codegen(this, world); |
} |
@@ -44,7 +44,7 @@ class Backend { |
} |
abstract void enqueueHelpers(Enqueuer world); |
- abstract CodeBlock codegen(WorkItem work); |
+ abstract CodeBuffer codegen(WorkItem work); |
abstract void processNativeClasses(Enqueuer world, |
Collection<LibraryElement> libraries); |
abstract void assembleProgram(); |
@@ -86,13 +86,13 @@ class JavaScriptBackend extends Backend { |
} |
} |
- CodeBlock codegen(WorkItem work) { |
+ CodeBuffer codegen(WorkItem work) { |
HGraph graph = builder.build(work); |
optimizer.optimize(work, graph); |
if (work.allowSpeculativeOptimization |
&& optimizer.trySpeculativeOptimizations(work, graph)) { |
- CodeBlock codeBlock = generator.generateBailoutMethod(work, graph); |
- compiler.codegenWorld.addBailoutCode(work, codeBlock); |
+ CodeBuffer codeBuffer = generator.generateBailoutMethod(work, graph); |
+ compiler.codegenWorld.addBailoutCode(work, codeBuffer); |
optimizer.prepareForSpeculativeOptimizations(work, graph); |
optimizer.optimize(work, graph); |
} |
@@ -773,11 +773,11 @@ class Compiler implements DiagnosticListener { |
assert(phase == PHASE_RECOMPILING); |
while (!world.recompilationCandidates.isEmpty()) { |
WorkItem work = world.recompilationCandidates.next(); |
- String oldCode = world.universe.generatedCode[work.element].code; |
+ CodeBuffer oldCode = world.universe.generatedCode[work.element]; |
world.universe.generatedCode.remove(work.element); |
world.universe.generatedBailoutCode.remove(work.element); |
withCurrentElement(work.element, () => work.run(this, world)); |
- String newCode = world.universe.generatedCode[work.element].code; |
+ CodeBuffer newCode = world.universe.generatedCode[work.element]; |
if (REPORT_PASS2_OPTIMIZATIONS && newCode != oldCode) { |
log("Pass 2 optimization:"); |
log("Before:\n$oldCode"); |
@@ -897,9 +897,9 @@ class Compiler implements DiagnosticListener { |
constantHandler.compileWorkItem(work); |
return null; |
} else { |
- CodeBlock codeBlock = backend.codegen(work); |
- codegenWorld.addGeneratedCode(work, codeBlock); |
- return codeBlock.code; |
+ CodeBuffer codeBuffer = backend.codegen(work); |
+ codegenWorld.addGeneratedCode(work, codeBuffer); |
+ return codeBuffer.toString(); |
} |
} |