diff options
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 7 | 
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 2afec33..3c8b04f 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -4651,6 +4651,13 @@ SelectionDAGBuilder::visitIntrinsicCall(const CallInst &I, unsigned Intrinsic) {    case Intrinsic::pow:      visitPow(I);      return 0; +  case Intrinsic::fma: +    setValue(&I, DAG.getNode(ISD::FMA, dl, +                             getValue(I.getArgOperand(0)).getValueType(), +                             getValue(I.getArgOperand(0)), +                             getValue(I.getArgOperand(1)), +                             getValue(I.getArgOperand(2)))); +    return 0;    case Intrinsic::convert_to_fp16:      setValue(&I, DAG.getNode(ISD::FP32_TO_FP16, dl,                               MVT::i16, getValue(I.getArgOperand(0))));  | 
