diff options
author | Lang Hames <lhames@gmail.com> | 2012-11-22 03:31:45 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2012-11-22 03:31:45 +0000 |
commit | b47ec4087cc1d4cdc647cce7acf03b5c34f91722 (patch) | |
tree | 22fb207b608278bdfd6b749219568dbef20ce4b6 /lib/CodeGen/SelectionDAG | |
parent | b9a12ea0fd92bfdb4c6eb5af333648a618f68686 (diff) | |
download | llvm-b47ec4087cc1d4cdc647cce7acf03b5c34f91722.tar.gz llvm-b47ec4087cc1d4cdc647cce7acf03b5c34f91722.tar.bz2 llvm-b47ec4087cc1d4cdc647cce7acf03b5c34f91722.tar.xz |
llvm.fmuladd.* lowering should be checking isOperationLegalOrCustom, rather than
isOperationLegal. Thanks to Craig Topper for pointing this out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168485 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG')
-rw-r--r-- | lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 3396d64853..ae94d1e666 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -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(), |