Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(169)

Unified Diff: pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart

Issue 2974633002: Use JsStrategy, remove KernelBackendStrategy (Closed)
Patch Set: Delete test Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/compiler/lib/src/kernel/element_map_impl.dart ('k') | pkg/compiler/lib/src/kernel/kernel_strategy.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
diff --git a/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart b/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
index 1282ca16b61354c0d83eef1699f467ff40706600..139cbd16f3c30b3981da47e66d2338141b5c6832 100644
--- a/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
+++ b/pkg/compiler/lib/src/kernel/kernel_backend_strategy.dart
@@ -7,7 +7,6 @@ library dart2js.kernel.backend_strategy;
import 'package:kernel/ast.dart' as ir;
import '../backend_strategy.dart';
-import '../closure.dart';
import '../common/codegen.dart' show CodegenRegistry, CodegenWorkItem;
import '../common/tasks.dart';
import '../compiler.dart';
@@ -15,15 +14,11 @@ import '../elements/entities.dart';
import '../elements/entity_utils.dart' as utils;
import '../enqueue.dart';
import '../io/source_information.dart';
-import '../js/js_source_mapping.dart';
import '../js_backend/backend.dart';
-import '../js_backend/native_data.dart';
import '../js_emitter/sorter.dart';
-import '../js_model/closure.dart';
import '../js_model/js_strategy.dart';
import '../js_model/locals.dart';
import '../kernel/element_map.dart';
-import '../kernel/element_map_impl.dart';
import '../native/behavior.dart';
import '../options.dart';
import '../ssa/builder_kernel.dart';
@@ -32,14 +27,8 @@ import '../ssa/ssa.dart';
import '../ssa/types.dart';
import '../types/types.dart';
import '../universe/selector.dart';
-import '../universe/world_builder.dart';
import '../universe/world_impact.dart';
import '../world.dart';
-import 'element_map_impl.dart';
-import 'kernel_strategy.dart';
-
-/// If `true` the [JsStrategy] is used as the backend strategy.
-bool useJsStrategyForTesting = false;
/// A backend strategy based on Kernel IR nodes.
abstract class KernelBackendStrategy implements BackendStrategy {
@@ -47,78 +36,8 @@ abstract class KernelBackendStrategy implements BackendStrategy {
GlobalLocalsMap get globalLocalsMapForTesting;
factory KernelBackendStrategy(Compiler compiler) {
- return useJsStrategyForTesting
- ? new JsBackendStrategy(compiler)
- : new KernelBackendStrategyImpl(compiler);
- }
-}
-
-/// Backend strategy that uses the kernel elements as the backend model.
-// TODO(redemption): Replace this with a strategy based on the J-element
-// model.
-class KernelBackendStrategyImpl implements KernelBackendStrategy {
- final Compiler _compiler;
- Sorter _sorter;
- ClosureConversionTask _closureDataLookup;
- final GlobalLocalsMap _globalLocalsMap = new GlobalLocalsMap();
-
- KernelBackendStrategyImpl(this._compiler);
-
- KernelToElementMapForBuilding get elementMap {
- KernelFrontEndStrategy frontendStrategy = _compiler.frontendStrategy;
- KernelToElementMapImpl elementMap = frontendStrategy.elementMap;
- return elementMap;
- }
-
- GlobalLocalsMap get globalLocalsMapForTesting => _globalLocalsMap;
-
- @override
- ClosedWorldRefiner createClosedWorldRefiner(
- covariant KernelClosedWorld closedWorld) {
- return closedWorld;
- }
-
- @override
- Sorter get sorter {
- if (_sorter == null) {
- _sorter = new KernelSorter(elementMap);
- }
- return _sorter;
+ return new JsBackendStrategy(compiler);
}
-
- @override
- ClosureConversionTask get closureDataLookup =>
- _closureDataLookup ??= new KernelClosureConversionTask(
- _compiler.measurer, elementMap, null, _globalLocalsMap);
-
- @override
- WorkItemBuilder createCodegenWorkItemBuilder(ClosedWorld closedWorld) {
- return new KernelCodegenWorkItemBuilder(_compiler.backend, closedWorld);
- }
-
- @override
- CodegenWorldBuilder createCodegenWorldBuilder(
- NativeBasicData nativeBasicData,
- ClosedWorld closedWorld,
- SelectorConstraintsStrategy selectorConstraintsStrategy) {
- return new KernelCodegenWorldBuilder(
- elementMap,
- closedWorld.elementEnvironment,
- nativeBasicData,
- closedWorld,
- selectorConstraintsStrategy);
- }
-
- @override
- SsaBuilder createSsaBuilder(CompilerTask task, JavaScriptBackend backend,
- SourceInformationStrategy sourceInformationStrategy) {
- return new KernelSsaBuilder(
- task, backend.compiler, elementMap, _globalLocalsMap);
- }
-
- @override
- SourceInformationStrategy get sourceInformationStrategy =>
- const JavaScriptSourceInformationStrategy();
}
class KernelCodegenWorkItemBuilder implements WorkItemBuilder {
« no previous file with comments | « pkg/compiler/lib/src/kernel/element_map_impl.dart ('k') | pkg/compiler/lib/src/kernel/kernel_strategy.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698