[llvm] Vectorize: Support fminimumnum and fmaximumnum (PR #131781)
YunQiang Su via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 2 18:46:30 PDT 2025
================
@@ -2776,6 +2776,12 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
}
return Cost;
}
+ case Intrinsic::maximumnum:
+ case Intrinsic::minimumnum: {
+ if (TLI->isOperationLegalOrPromote(llvm::ISD::FMAXNUM_IEEE, LT.second))
+ return LT.first * 3;
----------------
wzssyqa wrote:
For Architectures that support `FMAXNUM_IEEE`, the `maximumnum` is implemented by:
```
ARG0 = FMAXNUM_IEEE ARG0, ARG0 // to queit sNaN
ARG1 = FMAXNUM_IEEE ARG1, ARG1 // to queit sNaN
RESULT= FMAXNUM_IEEE ARG0, ARG1 // do real max
```
https://github.com/llvm/llvm-project/pull/131781
More information about the llvm-commits
mailing list