Bug 1155807 - Watch for converted native groups with unknown properties, r=jandem.

This commit is contained in:
Brian Hackett 2015-04-28 08:12:54 -07:00
parent 2ba65800c2
commit 2337513828
2 changed files with 19 additions and 0 deletions

View File

@ -0,0 +1,15 @@
for (var i = 0; i < 2; i++) {
setJitCompilerOption("ion.warmup.trigger", 8)
function f(state) {
this.s = state
}
f.prototype.g = function(v, y) {
this.t
}
x = ['', '']
j = new f(false)
x.filter(j.g, j)
x.filter(j.g, new f(false))
j.__proto__ = {}
}

View File

@ -9468,6 +9468,10 @@ IonBuilder::getDefiniteSlot(TemporaryTypeSet* types, PropertyName* name, uint32_
if (!convertUnboxedGroups.append(key->group()))
CrashAtUnhandlableOOM("IonBuilder::getDefiniteSlot");
key = TypeSet::ObjectKey::get(nativeGroup);
if (key->unknownProperties()) {
trackOptimizationOutcome(TrackedOutcome::UnknownProperties);
return UINT32_MAX;
}
}
}