| Index: tests/compiler/dart2js/js_backend_cps_ir_source_information_test.dart
|
| diff --git a/tests/compiler/dart2js/js_backend_cps_ir_source_information_test.dart b/tests/compiler/dart2js/js_backend_cps_ir_source_information_test.dart
|
| index 505901f3d04d403be84d8dd7860be6f250ece2a0..713281f61146bfa9749a451faaca1098baef693e 100644
|
| --- a/tests/compiler/dart2js/js_backend_cps_ir_source_information_test.dart
|
| +++ b/tests/compiler/dart2js/js_backend_cps_ir_source_information_test.dart
|
| @@ -43,10 +43,6 @@ js.Node getJsNodeForElement(Compiler compiler, Element element) {
|
| return compiler.enqueuer.codegen.generatedCode[element];
|
| }
|
|
|
| -ir.FunctionDefinition getIrNodeForElement(Compiler compiler, Element element) {
|
| - return compiler.irBuilder.getIr(element);
|
| -}
|
| -
|
| String getCodeForMethod(Compiler compiler, String name) {
|
| Element foundElement;
|
| for (Element element in compiler.enqueuer.codegen.generatedCode.keys) {
|
| @@ -71,13 +67,23 @@ runTests(List<TestEntry> tests) {
|
| Map files = {TEST_MAIN_FILE: test.source};
|
| asyncTest(() {
|
| Compiler compiler = compilerFor(files, options: <String>['--use-cps-ir']);
|
| + ir.FunctionDefinition irNodeForMain;
|
| +
|
| + void cacheIrNodeForMain(Element function, ir.FunctionDefinition irNode) {
|
| + if (function == compiler.mainFunction) {
|
| + assert(irNodeForMain == null);
|
| + irNodeForMain = irNode;
|
| + }
|
| + }
|
| +
|
| Uri uri = Uri.parse('memory:$TEST_MAIN_FILE');
|
| + compiler.irBuilder.builderCallback = cacheIrNodeForMain;
|
| +
|
| return compiler.run(uri).then((bool success) {
|
| Expect.isTrue(success);
|
|
|
| - ir.Node irNode = getIrNodeForElement(compiler, compiler.mainFunction);
|
| IrSourceInformationVisitor irVisitor = new IrSourceInformationVisitor();
|
| - irNode.accept(irVisitor);
|
| + irNodeForMain.accept(irVisitor);
|
|
|
| js.Node jsNode = getJsNodeForElement(compiler, compiler.mainFunction);
|
| JsSourceInformationVisitor jsVisitor = new JsSourceInformationVisitor();
|
| @@ -90,7 +96,7 @@ runTests(List<TestEntry> tests) {
|
| 'Expected:\n$expectation\n'
|
| 'but found\n${irVisitor.sourceInformation}\n'
|
| 'in\n${test.source}'
|
| - 'CPS:\n${irNode.accept(new ir.SExpressionStringifier())}');
|
| + 'CPS:\n${irNodeForMain.accept(new ir.SExpressionStringifier())}');
|
| Expect.listEquals(expectation, jsVisitor.sourceInformation,
|
| 'Unexpected JS source information. '
|
| 'Expected:\n$expectation\n'
|
|
|