]> granicus.if.org Git - llvm/commitdiff
[X86] Regenerate big structure return test and check on x86_64 as well.
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 1 Aug 2017 13:12:15 +0000 (13:12 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 1 Aug 2017 13:12:15 +0000 (13:12 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@309676 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/X86/bigstructret.ll

index 3c499fae820ff9e1a1e413894b19d9c55879b611..6231ba3efb3febf004652102430e54341e046bf4 100644 (file)
@@ -1,15 +1,28 @@
-; RUN: llc < %s -march=x86 | FileCheck %s
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=i686-unknown-unknown | FileCheck %s --check-prefix=X86
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=X64
 
 %0 = type { i32, i32, i32, i32 }
 %1 = type { i1, i1, i1, i32 }
 
-; CHECK: ReturnBigStruct
-; CHECK: movl $24601, 12(%ecx)
-; CHECK: movl  $48, 8(%ecx)
-; CHECK: movl  $24, 4(%ecx)
-; CHECK: movl  $12, (%ecx)
-
 define fastcc %0 @ReturnBigStruct() nounwind readnone {
+; X86-LABEL: ReturnBigStruct:
+; X86:       # BB#0: # %entry
+; X86-NEXT:    movl $24601, 12(%ecx) # imm = 0x6019
+; X86-NEXT:    movl $48, 8(%ecx)
+; X86-NEXT:    movl $24, 4(%ecx)
+; X86-NEXT:    movl $12, (%ecx)
+; X86-NEXT:    movl %ecx, %eax
+; X86-NEXT:    retl
+;
+; X64-LABEL: ReturnBigStruct:
+; X64:       # BB#0: # %entry
+; X64-NEXT:    movabsq $105660490448944, %rax # imm = 0x601900000030
+; X64-NEXT:    movq %rax, 8(%rdi)
+; X64-NEXT:    movabsq $103079215116, %rax # imm = 0x180000000C
+; X64-NEXT:    movq %rax, (%rdi)
+; X64-NEXT:    movq %rdi, %rax
+; X64-NEXT:    retq
 entry:
   %0 = insertvalue %0 zeroinitializer, i32 12, 0
   %1 = insertvalue %0 %0, i32 24, 1
@@ -18,13 +31,24 @@ entry:
   ret %0 %3
 }
 
-; CHECK: ReturnBigStruct2
-; CHECK: movl  $48, 4(%ecx)
-; CHECK: movb  $1, 2(%ecx)
-; CHECK: movb  $1, 1(%ecx)
-; CHECK: movb  $0, (%ecx)
-
 define fastcc %1 @ReturnBigStruct2() nounwind readnone {
+; X86-LABEL: ReturnBigStruct2:
+; X86:       # BB#0: # %entry
+; X86-NEXT:    movl $48, 4(%ecx)
+; X86-NEXT:    movb $1, 2(%ecx)
+; X86-NEXT:    movb $1, 1(%ecx)
+; X86-NEXT:    movb $0, (%ecx)
+; X86-NEXT:    movl %ecx, %eax
+; X86-NEXT:    retl
+;
+; X64-LABEL: ReturnBigStruct2:
+; X64:       # BB#0: # %entry
+; X64-NEXT:    movl $48, 4(%rdi)
+; X64-NEXT:    movb $1, 2(%rdi)
+; X64-NEXT:    movb $1, 1(%rdi)
+; X64-NEXT:    movb $0, (%rdi)
+; X64-NEXT:    movq %rdi, %rax
+; X64-NEXT:    retq
 entry:
   %0 = insertvalue %1 zeroinitializer, i1 false, 0
   %1 = insertvalue %1 %0, i1 true, 1