| Index: sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/ssa/builder.dart b/sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| index 916928248af9b5cde784246791d2614044acf750..df84dd6eb988818874c81c3ecc24831df0cbe913 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/ssa/builder.dart
|
| @@ -1776,6 +1776,9 @@ class SsaBuilder extends ResolvedVisitor implements Visitor {
|
| return new HTypeConversion.withTypeRepresentation(type, kind, subtype,
|
| original, typeVariable);
|
| } else if (type.kind == TypeKind.FUNCTION) {
|
| + if (backend.rti.isSimpleFunctionType(type)) {
|
| + return original.convertType(compiler, type, kind);
|
| + }
|
| HType subtype = original.instructionType;
|
| if (type.containsTypeVariables) {
|
| bool contextIsTypeArguments = false;
|
| @@ -2794,6 +2797,9 @@ class SsaBuilder extends ResolvedVisitor implements Visitor {
|
| HInstruction buildIsNode(Node node, DartType type, HInstruction expression) {
|
| type = type.unalias(compiler);
|
| if (type.kind == TypeKind.FUNCTION) {
|
| + if (backend.rti.isSimpleFunctionType(type)) {
|
| + return new HIs(type, <HInstruction>[expression], HIs.RAW_CHECK);
|
| + }
|
| Element checkFunctionSubtype = backend.getCheckFunctionSubtype();
|
|
|
| HInstruction signatureName = graph.addConstantString(
|
|
|