mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 944398: Inline Math.fround even if its returned value hasn't ever been observed; r=bhackett
This commit is contained in:
parent
b8918e11e2
commit
aab6c86de0
@ -894,9 +894,17 @@ IonBuilder::inlineMathFRound(CallInfo &callInfo)
|
|||||||
|
|
||||||
// MIRType can't be Float32, as this point, as getInlineReturnType uses JSVal types
|
// MIRType can't be Float32, as this point, as getInlineReturnType uses JSVal types
|
||||||
// to infer the returned MIR type.
|
// to infer the returned MIR type.
|
||||||
MIRType returnType = getInlineReturnType();
|
types::TemporaryTypeSet *returned = getInlineReturnTypeSet();
|
||||||
if (!IsNumberType(returnType))
|
if (returned->empty()) {
|
||||||
return InliningStatus_NotInlined;
|
// As there's only one possible returned type, just add it to the observed
|
||||||
|
// returned typeset
|
||||||
|
if (!returned->addType(types::Type::DoubleType(), alloc_->lifoAlloc()))
|
||||||
|
return InliningStatus_Error;
|
||||||
|
} else {
|
||||||
|
MIRType returnType = getInlineReturnType();
|
||||||
|
if (!IsNumberType(returnType))
|
||||||
|
return InliningStatus_NotInlined;
|
||||||
|
}
|
||||||
|
|
||||||
MIRType arg = callInfo.getArg(0)->type();
|
MIRType arg = callInfo.getArg(0)->type();
|
||||||
if (!IsNumberType(arg))
|
if (!IsNumberType(arg))
|
||||||
|
Loading…
Reference in New Issue
Block a user