| Index: dart/sdk/lib/_internal/compiler/implementation/compiler.dart
|
| ===================================================================
|
| --- dart/sdk/lib/_internal/compiler/implementation/compiler.dart (revision 16250)
|
| +++ dart/sdk/lib/_internal/compiler/implementation/compiler.dart (working copy)
|
| @@ -128,7 +128,6 @@
|
| Element _currentElement;
|
| LibraryElement coreLibrary;
|
| LibraryElement isolateLibrary;
|
| - LibraryElement isolateHelperLibrary;
|
| LibraryElement jsHelperLibrary;
|
| LibraryElement interceptorsLibrary;
|
| LibraryElement foreignLibrary;
|
| @@ -403,33 +402,12 @@
|
| void enableIsolateSupport(LibraryElement element) {
|
| // TODO(ahe): Move this method to Enqueuer.
|
| isolateLibrary = element.patch;
|
| - isolateHelperLibrary = scanBuiltinLibrary('_isolate_helper');
|
| - importForeignLibrary(isolateHelperLibrary);
|
| - importHelperLibrary(isolateHelperLibrary);
|
| -
|
| - libraryLoader.importLibrary(isolateLibrary, isolateHelperLibrary, null);
|
| + enqueuer.resolution.addToWorkList(isolateLibrary.find(START_ROOT_ISOLATE));
|
| enqueuer.resolution.addToWorkList(
|
| - isolateHelperLibrary.find(START_ROOT_ISOLATE));
|
| + isolateLibrary.find(const SourceString('_currentIsolate')));
|
| enqueuer.resolution.addToWorkList(
|
| - isolateHelperLibrary.find(const SourceString('_currentIsolate')));
|
| - enqueuer.resolution.addToWorkList(
|
| - isolateHelperLibrary.find(const SourceString('_callInIsolate')));
|
| - enqueuer.codegen.addToWorkList(
|
| - isolateHelperLibrary.find(START_ROOT_ISOLATE));
|
| -
|
| - // The helper library does not use the native language extension,
|
| - // so we manually set the native classes this library defines.
|
| - // TODO(ngeoffray): Enable annotations on these classes.
|
| - ClassElement cls = isolateHelperLibrary.find(const SourceString('_Window'));
|
| - cls.setNative('"*DOMWindow"');
|
| -
|
| - cls = isolateHelperLibrary.find(const SourceString('_WorkerStub'));
|
| - cls.setNative('"*Worker"');
|
| -
|
| - enqueuer.resolution.nativeEnqueuer.processNativeClassesInLibrary(
|
| - isolateHelperLibrary);
|
| - enqueuer.codegen.nativeEnqueuer.processNativeClassesInLibrary(
|
| - isolateHelperLibrary);
|
| + isolateLibrary.find(const SourceString('_callInIsolate')));
|
| + enqueuer.codegen.addToWorkList(isolateLibrary.find(START_ROOT_ISOLATE));
|
| }
|
|
|
| bool hasIsolateSupport() => isolateLibrary != null;
|
| @@ -522,7 +500,7 @@
|
|
|
| /** Define the JS helper functions in the given library. */
|
| void importForeignLibrary(LibraryElement library) {
|
| - if (foreignLibrary != null) {
|
| + if (jsHelperLibrary != null) {
|
| libraryLoader.importLibrary(library, foreignLibrary, null);
|
| }
|
| }
|
| @@ -535,6 +513,7 @@
|
| 'dart/tests/compiler/dart2js_native');
|
| if (nativeTest
|
| || libraryName == 'dart:mirrors'
|
| + || libraryName == 'dart:isolate'
|
| || libraryName == 'dart:math'
|
| || libraryName == 'dart:html'
|
| || libraryName == 'dart:html_common'
|
|
|