OSDN Git Service

add 32 bit tests
authorClement Courbet <courbet@google.com>
Fri, 21 Apr 2017 09:20:58 +0000 (09:20 +0000)
committerClement Courbet <courbet@google.com>
Fri, 21 Apr 2017 09:20:58 +0000 (09:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@300961 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/X86/memcpy-struct-by-value.ll

index 3c01adb..18161cc 100644 (file)
@@ -1,7 +1,12 @@
 ; RUN: llc -mtriple=x86_64-linux-gnu -mattr=-ermsb < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=NOFAST
 ; RUN: llc -mtriple=x86_64-linux-gnu -mattr=+ermsb < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=FAST
-; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=haswell < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=HASWELL
-; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=generic < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=GENERIC
+; RUN: llc -mtriple=i686-linux-gnu -mattr=-ermsb < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=NOFAST32
+; RUN: llc -mtriple=i686-linux-gnu -mattr=+ermsb < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=FAST
+; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=generic < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=NOFAST
+; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=haswell < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=FAST
+; FIXME: The documentation stes that ivybridge has ermsb, but this is not
+; enabled right now since I coud not confirm by testing.
+; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=ivybridge < %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=NOFAST
 
 %struct.large = type { [4096 x i8] }
 
@@ -13,9 +18,8 @@ define void @test1(%struct.large* nocapture %x) nounwind {
 
 ; ALL-LABEL: test1:
 ; NOFAST: rep;movsq
-; GENERIC: rep;movsq
+; NOFAST32: rep;movsl
 ; FAST: rep;movsb
-; HASWELL: rep;movsb
 }
 
 define void @test2(%struct.large* nocapture %x) nounwind minsize {
@@ -24,9 +28,8 @@ define void @test2(%struct.large* nocapture %x) nounwind minsize {
 
 ; ALL-LABEL: test2:
 ; NOFAST: rep;movsq
-; GENERIC: rep;movsq
+; NOFAST32: rep;movsl
 ; FAST: rep;movsb
-; HASWELL: rep;movsb
 }
 
 %struct.large_oddsize = type { [4095 x i8] }
@@ -39,7 +42,6 @@ define void @test3(%struct.large_oddsize* nocapture %x) nounwind minsize {
 
 ; ALL-LABEL: test3:
 ; NOFAST: rep;movsb
-; GENERIC: rep;movsb
+; NOFAST32: rep;movsb
 ; FAST: rep;movsb
-; HASWELL: rep;movsb
 }