1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 02:33:06 +01:00

llvm.fmuladd.* lowering should be checking isOperationLegalOrCustom, rather than

isOperationLegal. Thanks to Craig Topper for pointing this out.

llvm-svn: 168485
This commit is contained in:
Lang Hames 2012-11-22 03:31:45 +00:00
parent b9c4f4e95e
commit 313cf13f6d

View File

@ -4994,7 +4994,7 @@ SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, unsigned Intrinsic) {
case Intrinsic::fmuladd: {
EVT VT = TLI.getValueType(I.getType());
if (TM.Options.AllowFPOpFusion != FPOpFusion::Strict &&
TLI.isOperationLegal(ISD::FMA, VT) &&
TLI.isOperationLegalOrCustom(ISD::FMA, VT) &&
TLI.isFMAFasterThanMulAndAdd(VT)){
setValue(&I, DAG.getNode(ISD::FMA, dl,
getValue(I.getArgOperand(0)).getValueType(),