Using the nonans FMF and the DAG.isKnownNeverNaN on the inputs.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
LGTM.
llvm/lib/Target/RISCV/RISCVISelLowering.cpp | ||
---|---|---|
4675 | How about to initialize NewY as Y and assign it to select node if Op->getFlags().hasNoNaNs() || DAG.isKnownNeverNaN(X) like, SDValue NewY = Y; if (Op->getFlags().hasNoNaNs() || DAG.isKnownNeverNaN(X)) { SDValue XIsNonNan = DAG.getSetCC(DL, XLenVT, X, X, ISD::SETOEQ); NewY = DAG.getSelect(DL, VT, XIsNonNan, Y, X); } |
How about to initialize NewY as Y and assign it to select node if Op->getFlags().hasNoNaNs() || DAG.isKnownNeverNaN(X) like,