Version 2.14.0-28.0.dev
Merge commit 'b529afd10a733dfcca2066b36a2b74a24b184f46' into 'dev'
diff --git a/pkg/compiler/lib/src/common_elements.dart b/pkg/compiler/lib/src/common_elements.dart
index 81237f8..a57232b 100644
--- a/pkg/compiler/lib/src/common_elements.dart
+++ b/pkg/compiler/lib/src/common_elements.dart
@@ -455,7 +455,7 @@
// From dart:_rti
- FunctionEntity get setRuntimeTypeInfo;
+ FunctionEntity get setArrayType;
FunctionEntity get findType;
FunctionEntity get instanceType;
@@ -1848,10 +1848,10 @@
FunctionEntity _findRtiFunction(String name) =>
_findLibraryMember(rtiLibrary, name);
- FunctionEntity _setRuntimeTypeInfo;
+ FunctionEntity _setArrayType;
@override
- FunctionEntity get setRuntimeTypeInfo =>
- _setRuntimeTypeInfo ??= _findRtiFunction('setRuntimeTypeInfo');
+ FunctionEntity get setArrayType =>
+ _setArrayType ??= _findRtiFunction('_setArrayType');
FunctionEntity _findType;
@override
diff --git a/pkg/compiler/lib/src/js_backend/backend_impact.dart b/pkg/compiler/lib/src/js_backend/backend_impact.dart
index 3bd71af..cb72411 100644
--- a/pkg/compiler/lib/src/js_backend/backend_impact.dart
+++ b/pkg/compiler/lib/src/js_backend/backend_impact.dart
@@ -108,7 +108,7 @@
BackendImpact get computeSignature {
return _computeSignature ??= new BackendImpact(globalUses: [
- _commonElements.setRuntimeTypeInfo,
+ _commonElements.setArrayType,
], otherImpacts: [
listValues
]);
@@ -443,7 +443,7 @@
BackendImpact get typeVariableExpression {
return _typeVariableExpression ??= new BackendImpact(staticUses: [
- _commonElements.setRuntimeTypeInfo,
+ _commonElements.setArrayType,
_commonElements.createRuntimeType
], otherImpacts: [
listValues,
@@ -464,7 +464,7 @@
BackendImpact get genericTypeCheck {
return _genericTypeCheck ??= new BackendImpact(staticUses: [
// TODO(johnniwinther): Investigate why this is needed.
- _commonElements.setRuntimeTypeInfo,
+ _commonElements.setArrayType,
], otherImpacts: [
listValues,
getRuntimeTypeArgument,
@@ -654,7 +654,7 @@
// Literal lists can be translated into calls to these functions:
globalUses: [
_commonElements.jsArrayTypedConstructor,
- _commonElements.setRuntimeTypeInfo,
+ _commonElements.setArrayType,
]);
}
@@ -688,7 +688,7 @@
return _runtimeTypeSupport ??= new BackendImpact(globalClasses: [
_commonElements.listClass
], globalUses: [
- _commonElements.setRuntimeTypeInfo,
+ _commonElements.setArrayType,
], otherImpacts: [
getRuntimeTypeArgument,
computeSignature
diff --git a/pkg/compiler/lib/src/js_backend/codegen_listener.dart b/pkg/compiler/lib/src/js_backend/codegen_listener.dart
index bbac3ae..f033b01 100644
--- a/pkg/compiler/lib/src/js_backend/codegen_listener.dart
+++ b/pkg/compiler/lib/src/js_backend/codegen_listener.dart
@@ -202,7 +202,7 @@
if (type is InterfaceType) {
impactBuilder.registerTypeUse(new TypeUse.instantiation(type));
if (_rtiNeed.classNeedsTypeArguments(type.element)) {
- FunctionEntity helper = _commonElements.setRuntimeTypeInfo;
+ FunctionEntity helper = _commonElements.setArrayType;
impactBuilder.registerStaticUse(new StaticUse.staticInvoke(
helper, helper.parameterStructure.callStructure));
}
diff --git a/pkg/compiler/lib/src/js_backend/constant_emitter.dart b/pkg/compiler/lib/src/js_backend/constant_emitter.dart
index 9fea86f..0d0cf6c 100644
--- a/pkg/compiler/lib/src/js_backend/constant_emitter.dart
+++ b/pkg/compiler/lib/src/js_backend/constant_emitter.dart
@@ -437,8 +437,7 @@
ConstantValue constant, InterfaceType type, jsAst.Expression value) {
assert(type.element == _commonElements.jsArrayClass);
if (_rtiNeed.classNeedsTypeArguments(type.element)) {
- return new jsAst.Call(
- getHelperProperty(_commonElements.setRuntimeTypeInfo),
+ return new jsAst.Call(getHelperProperty(_commonElements.setArrayType),
[value, _reifiedTypeNewRti(type)]);
}
return value;
diff --git a/pkg/compiler/lib/src/js_backend/minify_namer.dart b/pkg/compiler/lib/src/js_backend/minify_namer.dart
index 60a2b9c..bf2f56c 100644
--- a/pkg/compiler/lib/src/js_backend/minify_namer.dart
+++ b/pkg/compiler/lib/src/js_backend/minify_namer.dart
@@ -178,7 +178,7 @@
r'JSArray',
r'createInvocationMirror',
r'String',
- r'setRuntimeTypeInfo',
+ r'setArrayType',
r'createRuntimeType'
]);
}
@@ -389,8 +389,11 @@
String root = selector.isOperator
? operatorNameToIdentifier(selector.name)
: privateName(selector.memberName);
- String prefix =
- selector.isGetter ? r"$get" : selector.isSetter ? r"$set" : "";
+ String prefix = selector.isGetter
+ ? r"$get"
+ : selector.isSetter
+ ? r"$set"
+ : "";
String callSuffix = selector.isCall
? Namer.callSuffixForStructure(selector.callStructure).join()
: "";
diff --git a/pkg/compiler/lib/src/ssa/builder_kernel.dart b/pkg/compiler/lib/src/ssa/builder_kernel.dart
index 0520273..c9a40cd 100644
--- a/pkg/compiler/lib/src/ssa/builder_kernel.dart
+++ b/pkg/compiler/lib/src/ssa/builder_kernel.dart
@@ -2200,14 +2200,14 @@
HInstruction _callSetRuntimeTypeInfo(HInstruction typeInfo,
HInstruction newObject, SourceInformation sourceInformation) {
// Set the runtime type information on the object.
- FunctionEntity typeInfoSetterFn = _commonElements.setRuntimeTypeInfo;
+ FunctionEntity typeInfoSetterFn = _commonElements.setArrayType;
// TODO(efortuna): Insert source information in this static invocation.
_pushStaticInvocation(typeInfoSetterFn, <HInstruction>[newObject, typeInfo],
_abstractValueDomain.dynamicType, const <DartType>[],
sourceInformation: sourceInformation);
// The new object will now be referenced through the
- // `setRuntimeTypeInfo` call. We therefore set the type of that
+ // `setArrayType` call. We therefore set the type of that
// instruction to be of the object's type.
assert(
stack.last is HInvokeStatic || stack.last == newObject,
diff --git a/pkg/compiler/lib/src/ssa/optimize.dart b/pkg/compiler/lib/src/ssa/optimize.dart
index 8a819a1..f90ed78 100644
--- a/pkg/compiler/lib/src/ssa/optimize.dart
+++ b/pkg/compiler/lib/src/ssa/optimize.dart
@@ -721,7 +721,7 @@
// t1 = s.split(pattern);
// t2 = String;
// t3 = JSArray<t2>;
- // t4 = setRuntimeTypeInfo(t1, t3);
+ // t4 = setArrayType(t1, t3);
//
AbstractValue resultMask = _abstractValueDomain.growableListType;
@@ -751,7 +751,7 @@
node.block.addBefore(node, typeInfo);
HInvokeStatic tagInstruction = new HInvokeStatic(
- commonElements.setRuntimeTypeInfo,
+ commonElements.setArrayType,
<HInstruction>[splitInstruction, typeInfo],
resultMask,
const <DartType>[]);
@@ -1368,8 +1368,8 @@
// Can we find the length as an input to an allocation?
HInstruction potentialAllocation = receiver;
if (receiver is HInvokeStatic &&
- receiver.element == commonElements.setRuntimeTypeInfo) {
- // Look through `setRuntimeTypeInfo(new Array(), ...)`
+ receiver.element == commonElements.setArrayType) {
+ // Look through `setArrayType(new Array(), ...)`
potentialAllocation = receiver.inputs.first;
}
if (_graph.allocatedFixedLists.contains(potentialAllocation)) {
@@ -1619,7 +1619,7 @@
node.inputs[0], node.inputs[1], _abstractValueDomain.boolType)
..sourceInformation = node.sourceInformation;
}
- } else if (element == commonElements.setRuntimeTypeInfo) {
+ } else if (element == commonElements.setArrayType) {
if (node.inputs.length == 2) {
return handleArrayTypeInfo(node);
}
@@ -2066,7 +2066,7 @@
}
if (instance is HInvokeStatic &&
- instance.element == commonElements.setRuntimeTypeInfo) {
+ instance.element == commonElements.setArrayType) {
// TODO(sra): What is the 'instantiated type' we should be registering as
// discussed above? Perhaps it should be carried on HLiteralList.
return instance.inputs.last;
@@ -3527,7 +3527,7 @@
// have it escape or store it into an object that escapes.
return false;
// TODO(sra): Handle library functions that we know do not modify or
- // leak the inputs. For example `setRuntimeTypeInfo` is used to mark
+ // leak the inputs. For example `setArrayType` is used to mark
// list literals with type information.
}
if (use is HPhi) {
diff --git a/pkg/compiler/test/codegen/data/array_add.dart b/pkg/compiler/test/codegen/data/array_add.dart
index 9f2cb1ad..d9c0fd3 100644
--- a/pkg/compiler/test/codegen/data/array_add.dart
+++ b/pkg/compiler/test/codegen/data/array_add.dart
@@ -7,7 +7,7 @@
// TODO(sra): Lower when type of input does not need a generic covariant check.
@pragma('dart2js:noInline')
/*spec.member: test1:function() {
- var t1 = H.setRuntimeTypeInfo([], type$.JSArray_int);
+ var t1 = H._setArrayType([], type$.JSArray_int);
C.JSArray_methods.add$1(t1, 1);
return t1;
}*/
diff --git a/pkg/compiler/test/impact/data/async.dart b/pkg/compiler/test/impact/data/async.dart
index 5516954..369b8ea 100644
--- a/pkg/compiler/test/impact/data/async.dart
+++ b/pkg/compiler/test/impact/data/async.dart
@@ -72,8 +72,8 @@
_IterationMarker.uncaughtError(1),
_IterationMarker.yieldStar(1),
_makeSyncStarIterable<Null>(1),
- def:local,
- setRuntimeTypeInfo(2)],
+ _setArrayType(2),
+ def:local],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -95,9 +95,9 @@
_asyncReturn(2),
_asyncStartSync(2),
_makeAsyncAwaitCompleter<Null>(0),
+ _setArrayType(2),
_wrapJsFunctionForAsync(1),
- def:local,
- setRuntimeTypeInfo(2)],
+ def:local],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -118,10 +118,10 @@
_IterationMarker.yieldStar(1),
_asyncStarHelper(3),
_makeAsyncStarStreamController<Null>(1),
+ _setArrayType(2),
_streamOfController(1),
_wrapJsFunctionForAsync(1),
- def:local,
- setRuntimeTypeInfo(2)],
+ def:local],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -141,8 +141,8 @@
_IterationMarker.uncaughtError(1),
_IterationMarker.yieldStar(1),
_makeSyncStarIterable<Null>(1),
- def:<anonymous>,
- setRuntimeTypeInfo(2)],
+ _setArrayType(2),
+ def:<anonymous>],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -163,9 +163,9 @@
_asyncReturn(2),
_asyncStartSync(2),
_makeAsyncAwaitCompleter<Null>(0),
+ _setArrayType(2),
_wrapJsFunctionForAsync(1),
- def:<anonymous>,
- setRuntimeTypeInfo(2)],
+ def:<anonymous>],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -185,10 +185,10 @@
_IterationMarker.yieldStar(1),
_asyncStarHelper(3),
_makeAsyncStarStreamController<Null>(1),
+ _setArrayType(2),
_streamOfController(1),
_wrapJsFunctionForAsync(1),
- def:<anonymous>,
- setRuntimeTypeInfo(2)],
+ def:<anonymous>],
type=[
inst:Function,
inst:JSArray<dynamic>,
diff --git a/pkg/compiler/test/impact/data/classes.dart b/pkg/compiler/test/impact/data/classes.dart
index bbd8d76..3b8bfc7 100644
--- a/pkg/compiler/test/impact/data/classes.dart
+++ b/pkg/compiler/test/impact/data/classes.dart
@@ -231,9 +231,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -313,9 +313,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -419,9 +419,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
diff --git a/pkg/compiler/test/impact/data/constants/lib.dart b/pkg/compiler/test/impact/data/constants/lib.dart
index 78375a3..9e25e3c 100644
--- a/pkg/compiler/test/impact/data/constants/lib.dart
+++ b/pkg/compiler/test/impact/data/constants/lib.dart
@@ -79,9 +79,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
diff --git a/pkg/compiler/test/impact/data/expressions.dart b/pkg/compiler/test/impact/data/expressions.dart
index 2beebc8..c486012 100644
--- a/pkg/compiler/test/impact/data/expressions.dart
+++ b/pkg/compiler/test/impact/data/expressions.dart
@@ -253,9 +253,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
as:GenericClass<int*,String*>*,
inst:Closure,
diff --git a/pkg/compiler/test/impact/data/extract_type_arguments.dart b/pkg/compiler/test/impact/data/extract_type_arguments.dart
index 47058df..5e3a2e4 100644
--- a/pkg/compiler/test/impact/data/extract_type_arguments.dart
+++ b/pkg/compiler/test/impact/data/extract_type_arguments.dart
@@ -50,10 +50,10 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
extractTypeArguments<A<dynamic>*>(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
impl:A<dynamic>*,
impl:Function,
@@ -104,10 +104,10 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
extractTypeArguments<B<dynamic,dynamic>*>(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
impl:B<dynamic,dynamic>*,
impl:Function,
diff --git a/pkg/compiler/test/impact/data/initializers.dart b/pkg/compiler/test/impact/data/initializers.dart
index bb2066f..842f6d9 100644
--- a/pkg/compiler/test/impact/data/initializers.dart
+++ b/pkg/compiler/test/impact/data/initializers.dart
@@ -343,9 +343,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
diff --git a/pkg/compiler/test/impact/data/injected_cast.dart b/pkg/compiler/test/impact/data/injected_cast.dart
index 6c17bad..4d41937 100644
--- a/pkg/compiler/test/impact/data/injected_cast.dart
+++ b/pkg/compiler/test/impact/data/injected_cast.dart
@@ -148,9 +148,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -201,9 +201,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
impl:A*,
inst:Closure,
@@ -459,9 +459,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -517,9 +517,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
impl:A*,
impl:D*,
@@ -577,9 +577,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -635,9 +635,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
impl:A*,
impl:D*,
@@ -752,9 +752,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -803,9 +803,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -859,9 +859,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
impl:List<int*>*,
inst:Closure,
diff --git a/pkg/compiler/test/impact/data/invokes.dart b/pkg/compiler/test/impact/data/invokes.dart
index a95e117..dee6d17 100644
--- a/pkg/compiler/test/impact/data/invokes.dart
+++ b/pkg/compiler/test/impact/data/invokes.dart
@@ -243,9 +243,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -334,9 +334,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -384,9 +384,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -434,9 +434,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -484,9 +484,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -796,9 +796,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -912,8 +912,8 @@
/*member: testLocalFunction:
static=[
- def:localFunction,
- setRuntimeTypeInfo(2)],
+ _setArrayType(2),
+ def:localFunction],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -962,10 +962,10 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
def:localFunction,
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:Function,
@@ -986,9 +986,9 @@
/*member: testLocalFunctionInvoke:
dynamic=[call(0)],
static=[
+ _setArrayType(2),
def:localFunction,
- localFunction(0),
- setRuntimeTypeInfo(2)],
+ localFunction(0)],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -1004,8 +1004,8 @@
/*member: testLocalFunctionGet:
static=[
- def:localFunction,
- setRuntimeTypeInfo(2)],
+ _setArrayType(2),
+ def:localFunction],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -1021,8 +1021,8 @@
/*member: testClosure:
static=[
- def:<anonymous>,
- setRuntimeTypeInfo(2)],
+ _setArrayType(2),
+ def:<anonymous>],
type=[
inst:Function,
inst:JSArray<dynamic>,
@@ -1038,8 +1038,8 @@
/*member: testClosureInvoke:
dynamic=[call(0)],
static=[
- def:<anonymous>,
- setRuntimeTypeInfo(2)],
+ _setArrayType(2),
+ def:<anonymous>],
type=[
inst:Function,
inst:JSArray<dynamic>,
diff --git a/pkg/compiler/test/impact/data/jsinterop.dart b/pkg/compiler/test/impact/data/jsinterop.dart
index 9850acf..3f41558 100644
--- a/pkg/compiler/test/impact/data/jsinterop.dart
+++ b/pkg/compiler/test/impact/data/jsinterop.dart
@@ -96,9 +96,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
diff --git a/pkg/compiler/test/impact/data/jsinterop_setter2.dart b/pkg/compiler/test/impact/data/jsinterop_setter2.dart
index 82f71cb..4c63bbb 100644
--- a/pkg/compiler/test/impact/data/jsinterop_setter2.dart
+++ b/pkg/compiler/test/impact/data/jsinterop_setter2.dart
@@ -46,9 +46,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
diff --git a/pkg/compiler/test/impact/data/runtime_type.dart b/pkg/compiler/test/impact/data/runtime_type.dart
index 926936d..bc6a52a 100644
--- a/pkg/compiler/test/impact/data/runtime_type.dart
+++ b/pkg/compiler/test/impact/data/runtime_type.dart
@@ -114,9 +114,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -170,9 +170,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -226,9 +226,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -280,9 +280,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -335,9 +335,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -390,9 +390,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -443,9 +443,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
@@ -498,9 +498,9 @@
_isObject(1),
_isString(1),
_isTop(1),
+ _setArrayType(2),
findType(1),
- instanceType(1),
- setRuntimeTypeInfo(2)],
+ instanceType(1)],
type=[
inst:Closure,
inst:JSArray<dynamic>,
diff --git a/sdk/lib/_internal/js_runtime/lib/rti.dart b/sdk/lib/_internal/js_runtime/lib/rti.dart
index 376e39a..53e7de9 100644
--- a/sdk/lib/_internal/js_runtime/lib/rti.dart
+++ b/sdk/lib/_internal/js_runtime/lib/rti.dart
@@ -626,7 +626,7 @@
// Don't inline. Let the JS engine inline this. The call expression is much
// more compact that the inlined expansion.
@pragma('dart2js:noInline')
-Object? setRuntimeTypeInfo(Object? target, Object? rti) {
+Object? _setArrayType(Object? target, Object? rti) {
assert(rti != null);
var rtiProperty = JS_EMBEDDED_GLOBAL('', ARRAY_RTI_PROPERTY);
JS('var', r'#[#] = #', target, rtiProperty, rti);
diff --git a/tools/VERSION b/tools/VERSION
index 76da197..653f4d4 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
MAJOR 2
MINOR 14
PATCH 0
-PRERELEASE 27
+PRERELEASE 28
PRERELEASE_PATCH 0
\ No newline at end of file