Skip to content

Commit 33c0b97

Browse files
pleathMikeHolman
authored andcommitted
1 parent 53204ee commit 33c0b97

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

lib/Backend/GlobOptFields.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,11 @@ GlobOpt::KillLiveElems(IR::IndirOpnd * indirOpnd, BVSparse<JitArenaAllocator> *
237237
this->KillAllFields(bv); // This also kills all property type values, as the same bit-vector tracks those stack syms
238238
SetAnyPropertyMayBeWrittenTo();
239239
}
240+
else if (inGlobOpt && indexOpnd && !indexOpnd->GetValueType().IsInt() && !currentBlock->globOptData.IsInt32TypeSpecialized(indexOpnd->m_sym))
241+
{
242+
// Write/delete to a non-integer numeric index can't alias a name on the RHS of a dot, but it change object layout
243+
this->KillAllObjectTypes(bv);
244+
}
240245
}
241246

242247
void

0 commit comments

Comments
 (0)