[llvm] [AMDGPU][GlobalISel] Fix wide multiply with known-zero parts (PR #215356)

Lukas Sommer via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 12 23:39:30 PDT 2026


================
@@ -4589,6 +4589,12 @@ void AMDGPULegalizerInfo::buildMultiply(LegalizerHelper &Helper,
             LocalAccum[1] = Unmerge.getReg(1);
         }
 
+        // Every partial product contributing to this destination index was
+        // skipped because an operand half is known zero, so nothing has been
+        // accumulated and the result is zero.
+        if (!LocalAccum[0])
+          LocalAccum[0] = getZero32();
----------------
sommerlukas wrote:

I must have missed the guard, thanks for the explanation!

I think it makes sense to still keep the assertion, thanks for adding that.

https://github.com/llvm/llvm-project/pull/215356


More information about the llvm-commits mailing list