[llvm] [InstSimplify] Optimize maximumnum and minimumnum (PR #139581)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue May 13 06:48:39 PDT 2025
================
@@ -6741,15 +6741,14 @@ Value *llvm::simplifyBinaryIntrinsic(Intrinsic::ID IID, Type *ReturnType,
// minnum(x, qnan) -> x
// maxnum(x, qnan) -> x
- // minnum(x, snan) -> qnan
- // maxnum(x, snan) -> qnan
+ // minnum(x, snan) -> qnan (or x for vectors mixing snans and qnans)
+ // maxnum(x, snan) -> qnan (or x for vectors mixing snans and qnans)
----------------
arsenm wrote:
This is just documenting a bug, you can't rely on the simple matcher. Either use m_APFloat and check if it's a splat quiet or signaling nan, or you have to do the complicated handling to process this per element
https://github.com/llvm/llvm-project/pull/139581
More information about the llvm-commits
mailing list