Issue #1864 - Fix IonBuilder::maybeMarkEmpty.

Look at the instruction's operands instead of the instruction itself,
and take an early exit on empty types.
This commit is contained in:
Moonchild 2022-04-15 20:22:02 +02:00 • committed by roytam1
commit 2aeed57657

View file

@ -8181,12 +8181,14 @@ IonBuilder::maybeMarkEmpty(MDefinition* ins)
// as having no possible types too. This is to avoid degrading
// subsequent analysis.
for (size_t i = 0; i < ins->numOperands(); i++) {
if (!ins->emptyResultTypeSet())
if (!ins->getOperand(i)->emptyResultTypeSet())
continue;
TemporaryTypeSet* types = alloc().lifoAlloc()->new_<TemporaryTypeSet>();
if (types)
if (types) {
ins->setResultTypeSet(types);
return;
}
}
}