| Index: pkg/compiler/lib/src/ssa/invoke_dynamic_specializers.dart
|
| diff --git a/pkg/compiler/lib/src/ssa/invoke_dynamic_specializers.dart b/pkg/compiler/lib/src/ssa/invoke_dynamic_specializers.dart
|
| index be3406f3ee4a243141bdc05a13aebef62f34b564..e0c561196445be619ff6fddebe29e5e7b2fac821 100644
|
| --- a/pkg/compiler/lib/src/ssa/invoke_dynamic_specializers.dart
|
| +++ b/pkg/compiler/lib/src/ssa/invoke_dynamic_specializers.dart
|
| @@ -27,11 +27,11 @@ class InvokeDynamicSpecializer {
|
| Operation operation(ConstantSystem constantSystem) => null;
|
|
|
| static InvokeDynamicSpecializer lookupSpecializer(Selector selector) {
|
| - if (selector.kind == SelectorKind.INDEX) {
|
| - return selector.name == '[]'
|
| - ? const IndexSpecializer()
|
| - : const IndexAssignSpecializer();
|
| - } else if (selector.kind == SelectorKind.OPERATOR) {
|
| + if (selector.isIndex) {
|
| + return const IndexSpecializer();
|
| + } else if (selector.isIndexSet) {
|
| + return const IndexAssignSpecializer();
|
| + } else if (selector.isOperator) {
|
| if (selector.name == 'unary-') {
|
| return const UnaryNegateSpecializer();
|
| } else if (selector.name == '~') {
|
| @@ -69,7 +69,7 @@ class InvokeDynamicSpecializer {
|
| } else if (selector.name == '>=') {
|
| return const GreaterEqualSpecializer();
|
| }
|
| - } else if (selector.kind == SelectorKind.CALL) {
|
| + } else if (selector.isCall) {
|
| if (selector.argumentCount == 1 && selector.namedArguments.length == 0) {
|
| if (selector.name == 'codeUnitAt') {
|
| return const CodeUnitAtSpecializer();
|
| @@ -238,8 +238,7 @@ abstract class BinaryArithmeticSpecializer extends InvokeDynamicSpecializer {
|
| Compiler compiler) {
|
| if (selector.name == name) return selector;
|
| JavaScriptBackend backend = compiler.backend;
|
| - return new Selector(
|
| - SelectorKind.CALL, new Name(name, backend.interceptorsLibrary),
|
| + return new Selector.call(new Name(name, backend.interceptorsLibrary),
|
| new CallStructure(selector.argumentCount));
|
| }
|
| }
|
|
|