[llvm] [DAG] visitFREEZE - always allow freezing multiple operands (PR #145939)
    Nikita Popov via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Fri Jun 27 08:12:53 PDT 2025
    
    
  
================
@@ -5555,6 +5555,23 @@ bool SelectionDAG::canCreateUndefOrPoison(SDValue Op, const APInt &DemandedElts,
   case ISD::SPLAT_VECTOR:
     return false;
 
+  case ISD::ADDC:
+  case ISD::SUBC:
+  case ISD::ADDE:
+  case ISD::SUBE:
+  case ISD::SADDO:
+  case ISD::SSUBO:
+  case ISD::SMULO:
+  case ISD::SADDO_CARRY:
+  case ISD::SSUBO_CARRY:
+  case ISD::UADDO:
+  case ISD::USUBO:
+  case ISD::UMULO:
+  case ISD::UADDO_CARRY:
+  case ISD::USUBO_CARRY:
+    // No poison on result or overflow flags.
+    return false;
----------------
nikic wrote:
Land this separately?
https://github.com/llvm/llvm-project/pull/145939
    
    
More information about the llvm-commits
mailing list