From 5fe2b03779908eab307488727d1b1a37128d7caa Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 23 Jul 2009 04:33:02 +0000 Subject: [PATCH] change a test to run in filecheck style. Rename it to be a general dumping ground of various SSE4.1 tests, since filecheck can reasonably handle them all in one file. Generalize it to check x86-64 stuff as well since it has a different ABI (a convenient way to test both the reg and mem forms of these instructions). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76848 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/X86/sse41.ll | 23 +++++++++++++++++++++++ test/CodeGen/X86/vec_insert-4.ll | 12 ------------ 2 files changed, 23 insertions(+), 12 deletions(-) create mode 100644 test/CodeGen/X86/sse41.ll delete mode 100644 test/CodeGen/X86/vec_insert-4.ll diff --git a/test/CodeGen/X86/sse41.ll b/test/CodeGen/X86/sse41.ll new file mode 100644 index 00000000000..dd7ca733a8f --- /dev/null +++ b/test/CodeGen/X86/sse41.ll @@ -0,0 +1,23 @@ +; RUN: llvm-as < %s | llc -mtriple=i686-apple-darwin9 -mattr=sse41 | FileCheck %s -check-prefix=X32 +; RUN: llvm-as < %s | llc -mtriple=x86_64-apple-darwin9 -mattr=sse41 | FileCheck %s -check-prefix=X64 + + +define <4 x i32> @pinsrd(i32 %s, <4 x i32> %tmp) nounwind { + %tmp1 = insertelement <4 x i32> %tmp, i32 %s, i32 1 + ret <4 x i32> %tmp1 +; X32: pinsrd: +; X32: pinsrd $1, 4(%esp), %xmm0 + +; X64: pinsrd: +; X64: pinsrd $1, %edi, %xmm0 +} + +define <16 x i8> @pinsrb(i8 %s, <16 x i8> %tmp) nounwind { + %tmp1 = insertelement <16 x i8> %tmp, i8 %s, i32 1 + ret <16 x i8> %tmp1 +; X32: pinsrb: +; X32: pinsrb $1, 4(%esp), %xmm0 + +; X64: pinsrb: +; X64: pinsrb $1, %edi, %xmm0 +} diff --git a/test/CodeGen/X86/vec_insert-4.ll b/test/CodeGen/X86/vec_insert-4.ll deleted file mode 100644 index 29c30403949..00000000000 --- a/test/CodeGen/X86/vec_insert-4.ll +++ /dev/null @@ -1,12 +0,0 @@ -; RUN: llvm-as < %s | llc -march=x86 -mattr=sse41 | grep pinsrd | count 1 -; RUN: llvm-as < %s | llc -march=x86 -mattr=sse41 | grep pinsrb | count 1 - -define <4 x i32> @t1(i32 %s, <4 x i32> %tmp) nounwind { - %tmp1 = insertelement <4 x i32> %tmp, i32 %s, i32 1 - ret <4 x i32> %tmp1 -} - -define <16 x i8> @t2(i8 %s, <16 x i8> %tmp) nounwind { - %tmp1 = insertelement <16 x i8> %tmp, i8 %s, i32 1 - ret <16 x i8> %tmp1 -} -- 2.34.1