ported change from tenfourfox:

- chemspill: M1537924 M1538006 (backported to ESR45) (b22dfbd77)
This commit is contained in:
2019-03-25 22:06:16 +08:00
parent f63e51e471
commit 141fdee146
2 changed files with 7 additions and 6 deletions
+7 -2
View File
@@ -6583,8 +6583,10 @@ jit::PropertyWriteNeedsTypeBarrier(TempAllocator& alloc, CompilerConstraintList*
bool success = true;
for (size_t i = 0; i < types->getObjectCount(); i++) {
TypeSet::ObjectKey* key = types->getObject(i);
if (!key || key->unknownProperties())
if (!key)
continue;
if (!key->hasStableClassAndProto(constraints))
return true;
// TI doesn't track TypedArray indexes and should never insert a type
// barrier for them.
@@ -6636,8 +6638,11 @@ jit::PropertyWriteNeedsTypeBarrier(TempAllocator& alloc, CompilerConstraintList*
TypeSet::ObjectKey* excluded = nullptr;
for (size_t i = 0; i < types->getObjectCount(); i++) {
TypeSet::ObjectKey* key = types->getObject(i);
if (!key || key->unknownProperties())
if (!key)
continue;
if (!key->hasStableClassAndProto(constraints))
return true;
if (!name && IsTypedArrayClass(key->clasp()))
continue;
-4
View File
@@ -9890,10 +9890,6 @@ class MArraySlice
return unboxedType_;
}
AliasSet getAliasSet() const override {
return AliasSet::Store(AliasSet::BoxedOrUnboxedElements(unboxedType()) |
AliasSet::ObjectFields);
}
bool possiblyCalls() const override {
return true;
}