[llvm] RegisterPressure: Remove dead defs correctly (PR #222627)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 15 04:24:07 PDT 2026
================
@@ -253,44 +253,50 @@ define <8 x i64> @test_divv_8i64(<8 x i64> %a, <8 x i64> %b) nounwind {
; NODQ-NEXT: vpextrq $1, %xmm3, %rcx
; NODQ-NEXT: xorl %edx, %edx
; NODQ-NEXT: divq %rcx
-; NODQ-NEXT: vmovq %rax, %xmm4
+; NODQ-NEXT: movq %rax, %rcx
; NODQ-NEXT: vmovq %xmm2, %rax
-; NODQ-NEXT: vmovq %xmm3, %rcx
+; NODQ-NEXT: vmovq %xmm3, %rsi
; NODQ-NEXT: xorl %edx, %edx
-; NODQ-NEXT: divq %rcx
-; NODQ-NEXT: vmovq %rax, %xmm2
-; NODQ-NEXT: vpunpcklqdq {{.*#+}} xmm2 = xmm2[0],xmm4[0]
-; NODQ-NEXT: vextracti32x4 $2, %zmm0, %xmm3
-; NODQ-NEXT: vpextrq $1, %xmm3, %rax
-; NODQ-NEXT: vextracti32x4 $2, %zmm1, %xmm4
-; NODQ-NEXT: vpextrq $1, %xmm4, %rcx
+; NODQ-NEXT: divq %rsi
+; NODQ-NEXT: movq %rax, %rsi
+; NODQ-NEXT: vextracti32x4 $2, %zmm0, %xmm2
+; NODQ-NEXT: vpextrq $1, %xmm2, %rax
+; NODQ-NEXT: vextracti32x4 $2, %zmm1, %xmm3
+; NODQ-NEXT: vpextrq $1, %xmm3, %rdi
; NODQ-NEXT: xorl %edx, %edx
-; NODQ-NEXT: divq %rcx
-; NODQ-NEXT: vmovq %rax, %xmm5
-; NODQ-NEXT: vmovq %xmm3, %rax
-; NODQ-NEXT: vmovq %xmm4, %rcx
+; NODQ-NEXT: divq %rdi
+; NODQ-NEXT: movq %rax, %rdi
+; NODQ-NEXT: vmovq %xmm2, %rax
+; NODQ-NEXT: vmovq %xmm3, %r8
; NODQ-NEXT: xorl %edx, %edx
-; NODQ-NEXT: divq %rcx
-; NODQ-NEXT: vmovq %rax, %xmm3
-; NODQ-NEXT: vpunpcklqdq {{.*#+}} xmm3 = xmm3[0],xmm5[0]
-; NODQ-NEXT: vinserti128 $1, %xmm2, %ymm3, %ymm2
-; NODQ-NEXT: vextracti128 $1, %ymm0, %xmm3
-; NODQ-NEXT: vpextrq $1, %xmm3, %rax
-; NODQ-NEXT: vextracti128 $1, %ymm1, %xmm4
-; NODQ-NEXT: vpextrq $1, %xmm4, %rcx
+; NODQ-NEXT: divq %r8
+; NODQ-NEXT: movq %rax, %r8
+; NODQ-NEXT: vextracti128 $1, %ymm0, %xmm2
+; NODQ-NEXT: vpextrq $1, %xmm2, %rax
+; NODQ-NEXT: vextracti128 $1, %ymm1, %xmm3
+; NODQ-NEXT: vpextrq $1, %xmm3, %r9
; NODQ-NEXT: xorl %edx, %edx
-; NODQ-NEXT: divq %rcx
-; NODQ-NEXT: vmovq %rax, %xmm5
-; NODQ-NEXT: vmovq %xmm3, %rax
-; NODQ-NEXT: vmovq %xmm4, %rcx
+; NODQ-NEXT: divq %r9
+; NODQ-NEXT: movq %rax, %r9
+; NODQ-NEXT: vmovq %xmm2, %rax
+; NODQ-NEXT: vmovq %xmm3, %r10
; NODQ-NEXT: xorl %edx, %edx
-; NODQ-NEXT: divq %rcx
-; NODQ-NEXT: vmovq %rax, %xmm3
-; NODQ-NEXT: vpunpcklqdq {{.*#+}} xmm3 = xmm3[0],xmm5[0]
+; NODQ-NEXT: divq %r10
+; NODQ-NEXT: movq %rax, %r10
; NODQ-NEXT: vpextrq $1, %xmm0, %rax
-; NODQ-NEXT: vpextrq $1, %xmm1, %rcx
+; NODQ-NEXT: vpextrq $1, %xmm1, %r11
; NODQ-NEXT: xorl %edx, %edx
-; NODQ-NEXT: divq %rcx
+; NODQ-NEXT: divq %r11
+; NODQ-NEXT: vmovq %rcx, %xmm2
+; NODQ-NEXT: vmovq %rsi, %xmm3
+; NODQ-NEXT: vmovq %rdi, %xmm4
+; NODQ-NEXT: vmovq %r8, %xmm5
+; NODQ-NEXT: vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]
+; NODQ-NEXT: vmovq %r9, %xmm3
+; NODQ-NEXT: vpunpcklqdq {{.*#+}} xmm4 = xmm5[0],xmm4[0]
+; NODQ-NEXT: vinserti128 $1, %xmm2, %ymm4, %ymm2
+; NODQ-NEXT: vmovq %r10, %xmm4
+; NODQ-NEXT: vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]
----------------
arsenm wrote:
Don't know but I really don't want to get bogged down yakshaving a regression in one random test. I've been stuck on this assert way too many times before
I also have the patches ready to finally delete LiveVariables, this is the main issue blocking that
https://github.com/llvm/llvm-project/pull/222627
More information about the llvm-commits
mailing list