diff --git a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h --- a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h +++ b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h @@ -110,7 +110,6 @@ private: std::pair foldFrameIndex(SDValue N) const; - bool isNoNanSrc(SDValue N) const; bool isInlineImmediate(const SDNode *N, bool Negated = false) const; bool isNegInlineImmediate(const SDNode *N) const { return isInlineImmediate(N, true); diff --git a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp --- a/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp @@ -316,17 +316,6 @@ } } -bool AMDGPUDAGToDAGISel::isNoNanSrc(SDValue N) const { - if (TM.Options.NoNaNsFPMath) - return true; - - // TODO: Move into isKnownNeverNaN - if (N->getFlags().hasNoNaNs()) - return true; - - return CurDAG->isKnownNeverNaN(N); -} - bool AMDGPUDAGToDAGISel::isInlineImmediate(const SDNode *N, bool Negated) const { if (N->isUndef()) @@ -2643,7 +2632,7 @@ bool AMDGPUDAGToDAGISel::SelectVOP3Mods_NNaN(SDValue In, SDValue &Src, SDValue &SrcMods) const { SelectVOP3Mods(In, Src, SrcMods); - return isNoNanSrc(Src); + return CurDAG->isKnownNeverNaN(Src); } bool AMDGPUDAGToDAGISel::SelectVOP3NoMods(SDValue In, SDValue &Src) const {