[llvm] InstCombine: Cleanup redundant result-not-nan check for canonicalize (PR #177765)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Sat Jan 24 05:40:09 PST 2026


https://github.com/arsenm created https://github.com/llvm/llvm-project/pull/177765

Missed case from 53eb230e476f69c5c879871a0d328d283a6ce172

>From 71c1881e78a6613fa5627cd811fbc1e7ca7a8142 Mon Sep 17 00:00:00 2001
From: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: Sat, 24 Jan 2026 14:38:37 +0100
Subject: [PATCH] InstCombine: Cleanup redundant result-not-nan check for
 canonicalize

Missed case from 53eb230e476f69c5c879871a0d328d283a6ce172
---
 .../Transforms/InstCombine/InstCombineSimplifyDemanded.cpp   | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp b/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
index eb7c98aa204cd..7600b7f1900db 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
@@ -3107,9 +3107,8 @@ Value *InstCombinerImpl::SimplifyDemandedUseFPClass(Instruction *I,
         // isn't a nan.
         // Otherwise, we also need to avoid denormal inputs to drop the
         // canonicalize.
-        if ((KnownSrc.isKnownNeverNaN() || (DemandedMask & fcNan) == fcNone) &&
-            (Mode == DenormalMode::getIEEE() ||
-             KnownSrc.isKnownNeverSubnormal()))
+        if (KnownSrc.isKnownNeverNaN() && (Mode == DenormalMode::getIEEE() ||
+                                           KnownSrc.isKnownNeverSubnormal()))
           return CI->getArgOperand(0);
 
         return nullptr;



More information about the llvm-commits mailing list