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

Unified Diff: pkg/compiler/lib/src/ssa/kernel_impact.dart

Issue 2329403003: More features handled in kernel impact. (Closed)
Patch Set: Fix analyze_test_test. Created 4 years, 3 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/ssa/kernel_ast_adapter.dart ('k') | pkg/compiler/lib/src/universe/feature.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/ssa/kernel_impact.dart
diff --git a/pkg/compiler/lib/src/ssa/kernel_impact.dart b/pkg/compiler/lib/src/ssa/kernel_impact.dart
index 2c01e31b380d3a060c55c1baf936e83492659613..862ba7700ebad2580607949c7e39dcac33f6c65d 100644
--- a/pkg/compiler/lib/src/ssa/kernel_impact.dart
+++ b/pkg/compiler/lib/src/ssa/kernel_impact.dart
@@ -11,9 +11,11 @@ import '../dart_types.dart';
import '../elements/elements.dart';
import '../js_backend/backend.dart' show JavaScriptBackend;
import '../kernel/kernel.dart';
+import '../kernel/kernel_debug.dart';
import '../kernel/kernel_visitor.dart';
import '../resolution/registry.dart' show ResolutionWorldImpactBuilder;
import '../universe/feature.dart';
+import '../universe/selector.dart';
import '../universe/use.dart';
import 'kernel_ast_adapter.dart';
@@ -221,7 +223,32 @@ class KernelImpactBuilder extends ir.Visitor {
}
@override
+ void visitPropertyGet(ir.PropertyGet node) {
+ node.receiver.accept(this);
+ impactBuilder.registerDynamicUse(new DynamicUse(
+ new Selector.getter(astAdapter.getName(node.name)), null));
+ }
+
+ @override
+ void visitPropertySet(ir.PropertySet node) {
+ node.receiver.accept(this);
+ node.value.accept(this);
+ impactBuilder.registerDynamicUse(new DynamicUse(
+ new Selector.setter(astAdapter.getName(node.name)), null));
+ }
+
+ @override
void visitNot(ir.Not not) {
not.operand.accept(this);
}
+
+ @override
+ void visitAssertStatement(ir.AssertStatement node) {
+ impactBuilder.registerFeature(
+ node.message != null ? Feature.ASSERT_WITH_MESSAGE : Feature.ASSERT);
+ node.visitChildren(this);
+ }
+
+ @override
+ void defaultNode(ir.Node node) => node.visitChildren(this);
}
« no previous file with comments | « pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart ('k') | pkg/compiler/lib/src/universe/feature.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698