OSDN Git Service

[x86] auto-generate complete test checks; NFC
authorSanjay Patel <spatel@rotateright.com>
Fri, 22 Mar 2019 15:33:55 +0000 (15:33 +0000)
committerSanjay Patel <spatel@rotateright.com>
Fri, 22 Mar 2019 15:33:55 +0000 (15:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@356762 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/X86/pr32610.ll

index 204500c..e8b90ee 100644 (file)
@@ -1,19 +1,40 @@
-; RUN: llc -o - %s | FileCheck %s
-
-; CHECK-LABEL: @pr32610
-; CHECK: movl L_b$non_lazy_ptr, [[BASEREG:%[a-z]+]]
-; CHECK: cmpl  ([[BASEREG]]), {{%[a-z]+}}
-; CHECK: cmpl  ([[BASEREG]]), {{%[a-z]+}}
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc -mtriple=i386-apple-macosx10.13.0 -o - %s | FileCheck %s
 
 target datalayout = "e-m:o-p:32:32-f64:32:64-f80:128-n8:16:32-S128"
-target triple = "i386-apple-macosx10.13.0"
 
 @c = external local_unnamed_addr global i32, align 4
 @b = external local_unnamed_addr global [1 x i32], align 4
 @d = external local_unnamed_addr global i32, align 4
 
-; Function Attrs: norecurse nounwind optsize ssp
-define void @pr32610(i32 %a0, i32 %a1) local_unnamed_addr #0 {
+define void @pr32610(i32 %a0, i32 %a1) #0 {
+; CHECK-LABEL: pr32610:
+; CHECK:       ## %bb.0: ## %entry
+; CHECK-NEXT:    pushl %ebp
+; CHECK-NEXT:    movl %esp, %ebp
+; CHECK-NEXT:    pushl %esi
+; CHECK-NEXT:    movl 8(%ebp), %ecx
+; CHECK-NEXT:    movl L_b$non_lazy_ptr, %edx
+; CHECK-NEXT:    xorl %eax, %eax
+; CHECK-NEXT:    cmpl (%edx), %ecx
+; CHECK-NEXT:    sete %al
+; CHECK-NEXT:    xorl %esi, %esi
+; CHECK-NEXT:    incl %esi
+; CHECK-NEXT:    cmpl $0, 12(%ebp)
+; CHECK-NEXT:    cmovel %esi, %eax
+; CHECK-NEXT:    cmpl (%edx), %ecx
+; CHECK-NEXT:    cmovnel %esi, %eax
+; CHECK-NEXT:    movl L_c$non_lazy_ptr, %ecx
+; CHECK-NEXT:    movl %eax, (%ecx)
+; CHECK-NEXT:    movl (%edx), %eax
+; CHECK-NEXT:    testl %eax, %eax
+; CHECK-NEXT:    movl $2, %ecx
+; CHECK-NEXT:    cmovnel %eax, %ecx
+; CHECK-NEXT:    movl L_d$non_lazy_ptr, %eax
+; CHECK-NEXT:    movl %ecx, (%eax)
+; CHECK-NEXT:    popl %esi
+; CHECK-NEXT:    popl %ebp
+; CHECK-NEXT:    retl
 entry:
   %0 = load i32, i32* getelementptr ([1 x i32], [1 x i32]* @b, i32 0, i32 undef), align 4, !tbaa !1
   %cmp = icmp eq i32 %a0, %0