Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
| diff --git a/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart b/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
| index 3dddaee07d2da3b3baad962b7192419cc0cd225d..a6e74601014993af4e76c4ef8a9fe672e0a2fa92 100644 |
| --- a/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
| +++ b/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
| @@ -273,6 +273,14 @@ class JavaScriptBackend extends Backend { |
| /// dart:mirrors has been loaded. |
| FunctionElement preserveMetadataMarker; |
| + /// Holds the method "preserveUris" in js_mirrors when |
| + /// dart:mirrors has been loaded. |
| + FunctionElement preserveUrisMarker; |
| + |
| + /// Holds the method "preserveUris" in js_mirrors when |
|
Johnni Winther
2014/07/04 07:42:51
"preserveUri" -> "preserveLibraryNames"
floitsch
2014/07/04 16:33:46
Done.
|
| + /// dart:mirrors has been loaded. |
| + FunctionElement preserveLibraryNamesMarker; |
| + |
| /// Holds the method "requiresPreamble" in _js_helper. |
| FunctionElement requiresPreambleMarker; |
| @@ -286,6 +294,12 @@ class JavaScriptBackend extends Backend { |
| /// program, this variable will stil be false. |
| bool hasRetainedMetadata = false; |
| + /// True if a call to preserveUris has been seen. |
| + bool mustRetainUris = false; |
| + |
| + /// True if a call to preserveLibraryNames has been seen. |
| + bool mustRetainLibraryNames = false; |
| + |
| /// True if a call to preserveNames has been seen. |
| bool mustPreserveNames = false; |
| @@ -1451,6 +1465,10 @@ class JavaScriptBackend extends Backend { |
| mustPreserveNames = true; |
| } else if (element == preserveMetadataMarker) { |
| mustRetainMetadata = true; |
| + } else if (element == preserveUrisMarker) { |
| + mustRetainUris = true; |
| + } else if (element == preserveLibraryNamesMarker) { |
| + mustRetainLibraryNames = true; |
| } else if (element == getIsolateAffinityTagMarker) { |
| needToInitializeIsolateAffinityTag = true; |
| } else if (element.isDeferredLoaderGetter) { |
| @@ -1611,6 +1629,8 @@ class JavaScriptBackend extends Backend { |
| } else if (uri == DART_JS_MIRRORS) { |
| disableTreeShakingMarker = find(library, 'disableTreeShaking'); |
| preserveMetadataMarker = find(library, 'preserveMetadata'); |
| + preserveUrisMarker = find(library, 'preserveUris'); |
| + preserveLibraryNamesMarker = find(library, 'preserveLibraryNames'); |
| } else if (uri == DART_JS_NAMES) { |
| preserveNamesMarker = find(library, 'preserveNames'); |
| } else if (uri == DART_HTML) { |