[llvm] c2bbf76 - [NFC][CodeGen][X86] Autogenerate checklines in a test to simplify further updates

Roman Lebedev via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 10 14:22:04 PST 2022


Author: Roman Lebedev
Date: 2022-02-11T01:21:45+03:00
New Revision: c2bbf7637aebfddcf052f0d0c0c5df0a85a97964

URL: https://github.com/llvm/llvm-project/commit/c2bbf7637aebfddcf052f0d0c0c5df0a85a97964
DIFF: https://github.com/llvm/llvm-project/commit/c2bbf7637aebfddcf052f0d0c0c5df0a85a97964.diff

LOG: [NFC][CodeGen][X86] Autogenerate checklines in a test to simplify further updates

Added: 
    

Modified: 
    llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll b/llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll
index 1f8d829383cf6..4a95c4b72ea66 100644
--- a/llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll
+++ b/llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll
@@ -1,3 +1,4 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
 ; RUN: llc < %s -mtriple=i686-- -mattr=+sse2 | FileCheck %s
 ; Increment in loop bb.i28.i adjusted to 2, to prevent loop reversal from
 ; kicking in.
@@ -5,6 +6,121 @@
 declare fastcc void @rdft(i32, i32, double*, i32*, double*)
 
 define fastcc void @mp_sqrt(i32 %n, i32 %radix, i32* %in, i32* %out, i32* %tmp1, i32* %tmp2, i32 %nfft, double* %tmp1fft, double* %tmp2fft, i32* %ip, double* %w) nounwind {
+; CHECK-LABEL: mp_sqrt:
+; CHECK:       # %bb.0: # %entry
+; CHECK-NEXT:    pushl %ebp
+; CHECK-NEXT:    pushl %ebx
+; CHECK-NEXT:    pushl %edi
+; CHECK-NEXT:    pushl %esi
+; CHECK-NEXT:    movl %edx, %esi
+; CHECK-NEXT:    movb $1, %cl
+; CHECK-NEXT:    movl $1, %ebx
+; CHECK-NEXT:    movl {{[0-9]+}}(%esp), %edi
+; CHECK-NEXT:    .p2align 4, 0x90
+; CHECK-NEXT:  .LBB0_1: # %bb.i5
+; CHECK-NEXT:    # =>This Inner Loop Header: Depth=1
+; CHECK-NEXT:    movl %ecx, %eax
+; CHECK-NEXT:    addl %ebx, %ebx
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    testb $1, %al
+; CHECK-NEXT:    jne .LBB0_1
+; CHECK-NEXT:  # %bb.2: # %mp_unexp_mp2d.exit.i
+; CHECK-NEXT:    je .LBB0_10
+; CHECK-NEXT:  # %bb.3: # %cond_next.i
+; CHECK-NEXT:    testb $1, %al
+; CHECK-NEXT:    jne .LBB0_10
+; CHECK-NEXT:  # %bb.4: # %cond_next36.i
+; CHECK-NEXT:    movl $0, 0
+; CHECK-NEXT:    movzbl %al, %ebp
+; CHECK-NEXT:    andl $1, %ebp
+; CHECK-NEXT:    xorpd %xmm0, %xmm0
+; CHECK-NEXT:    xorl %eax, %eax
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    xorpd %xmm1, %xmm1
+; CHECK-NEXT:    .p2align 4, 0x90
+; CHECK-NEXT:  .LBB0_5: # %bb.i28.i
+; CHECK-NEXT:    # =>This Inner Loop Header: Depth=1
+; CHECK-NEXT:    cvttsd2si %xmm1, %edx
+; CHECK-NEXT:    cmpl %esi, %edx
+; CHECK-NEXT:    cmovgel %eax, %edx
+; CHECK-NEXT:    addl $2, %ecx
+; CHECK-NEXT:    xorps %xmm2, %xmm2
+; CHECK-NEXT:    cvtsi2sd %edx, %xmm2
+; CHECK-NEXT:    xorpd %xmm1, %xmm1
+; CHECK-NEXT:    subsd %xmm2, %xmm1
+; CHECK-NEXT:    mulsd %xmm0, %xmm1
+; CHECK-NEXT:    addl $-2, %ebp
+; CHECK-NEXT:    jne .LBB0_5
+; CHECK-NEXT:  # %bb.6: # %mp_unexp_d2mp.exit29.i
+; CHECK-NEXT:    movl $0, 0
+; CHECK-NEXT:    je .LBB0_7
+; CHECK-NEXT:  # %bb.8: # %mp_sqrt_init.exit
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl %edi, %edx
+; CHECK-NEXT:    calll mp_mul_csqu at PLT
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl $-1, %edx
+; CHECK-NEXT:    pushl {{[0-9]+}}(%esp)
+; CHECK-NEXT:    pushl {{[0-9]+}}(%esp)
+; CHECK-NEXT:    pushl $0
+; CHECK-NEXT:    calll rdft at PLT
+; CHECK-NEXT:    addl $12, %esp
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl %esi, %edx
+; CHECK-NEXT:    movl {{[0-9]+}}(%esp), %eax
+; CHECK-NEXT:    pushl %eax
+; CHECK-NEXT:    pushl %edi
+; CHECK-NEXT:    pushl $0
+; CHECK-NEXT:    calll mp_mul_d2i at PLT
+; CHECK-NEXT:    addl $12, %esp
+; CHECK-NEXT:    testl %ebp, %ebp
+; CHECK-NEXT:    jne .LBB0_10
+; CHECK-NEXT:  # %bb.9: # %cond_false.i
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl %esi, %edx
+; CHECK-NEXT:    pushl {{[0-9]+}}(%esp)
+; CHECK-NEXT:    pushl $0
+; CHECK-NEXT:    calll mp_round at PLT
+; CHECK-NEXT:    addl $8, %esp
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl %esi, %edx
+; CHECK-NEXT:    movl {{[0-9]+}}(%esp), %edi
+; CHECK-NEXT:    pushl %edi
+; CHECK-NEXT:    movl {{[0-9]+}}(%esp), %ebp
+; CHECK-NEXT:    pushl %ebp
+; CHECK-NEXT:    pushl %edi
+; CHECK-NEXT:    calll mp_add at PLT
+; CHECK-NEXT:    addl $12, %esp
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl %esi, %edx
+; CHECK-NEXT:    pushl %ebp
+; CHECK-NEXT:    pushl %ebp
+; CHECK-NEXT:    pushl {{[0-9]+}}(%esp)
+; CHECK-NEXT:    calll mp_sub at PLT
+; CHECK-NEXT:    addl $12, %esp
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl %esi, %edx
+; CHECK-NEXT:    pushl %edi
+; CHECK-NEXT:    pushl $0
+; CHECK-NEXT:    calll mp_round at PLT
+; CHECK-NEXT:    addl $8, %esp
+; CHECK-NEXT:    xorl %ecx, %ecx
+; CHECK-NEXT:    movl %esi, %edx
+; CHECK-NEXT:    pushl %ebp
+; CHECK-NEXT:    pushl {{[0-9]+}}(%esp)
+; CHECK-NEXT:    pushl %ebx
+; CHECK-NEXT:    calll mp_mul_d2i at PLT
+; CHECK-NEXT:    addl $12, %esp
+; CHECK-NEXT:  .LBB0_10: # %cond_true.i
+; CHECK-NEXT:    popl %esi
+; CHECK-NEXT:    popl %edi
+; CHECK-NEXT:    popl %ebx
+; CHECK-NEXT:    popl %ebp
+; CHECK-NEXT:    retl
+; CHECK-NEXT:    .p2align 4, 0x90
+; CHECK-NEXT:  .LBB0_7: # %bb.i.i
+; CHECK-NEXT:    # =>This Inner Loop Header: Depth=1
+; CHECK-NEXT:    jmp .LBB0_7
 entry:
 	br label %bb.i5
 
@@ -33,9 +149,6 @@ cond_next36.i:		; preds = %cond_next.i
 	br label %bb.i28.i
 
 bb.i28.i:		; preds = %bb.i28.i, %cond_next36.i
-; CHECK: %bb.i28.i
-; CHECK: addl $2
-; CHECK: addl $-2
 	%j.0.reg2mem.0.i16.i = phi i32 [ 0, %cond_next36.i ], [ %indvar.next39.i, %bb.i28.i ]		; <i32> [#uses=2]
 	%din_addr.1.reg2mem.0.i17.i = phi double [ 0.000000e+00, %cond_next36.i ], [ %tmp16.i25.i, %bb.i28.i ]		; <double> [#uses=1]
 	%tmp1.i18.i = fptosi double %din_addr.1.reg2mem.0.i17.i to i32		; <i32> [#uses=2]


        


More information about the llvm-commits mailing list