[llvm] [DAGCombiner] Freeze maybe poison operands when folding select to logic (PR #84924)

Björn Pettersson via llvm-commits llvm-commits at lists.llvm.org
Sat Jul 20 04:24:02 PDT 2024


================
@@ -229,10 +229,41 @@ define i32 @combine_pmaddubsw_constant_sat() {
 
 ; Constant folding PMADDWD was causing an infinite loop in the PCMPGT commuting between 2 constant values.
 define i1 @pmaddwd_pcmpgt_infinite_loop() {
-; CHECK-LABEL: pmaddwd_pcmpgt_infinite_loop:
-; CHECK:       # %bb.0:
-; CHECK-NEXT:    movb $1, %al
-; CHECK-NEXT:    retq
+; SSE-LABEL: pmaddwd_pcmpgt_infinite_loop:
----------------
bjope wrote:

Anyway, maybe we can rely on that for example intrinsic calls like the one here has been constant folded already before ISel. And this test case isn't important to optimize (it is just a regression test for something that used to hit an infinite loop)..

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


More information about the llvm-commits mailing list