diff options
author | Chris Lattner <sabre@nondot.org> | 2009-07-23 04:43:48 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2009-07-23 04:43:48 +0000 |
commit | 1501f8b38706264577a5769d7c77de0a11a182b0 (patch) | |
tree | 09197782f6923a614226b838d864103b2d12601b /test/CodeGen/X86/sse41.ll | |
parent | 972d5628333423f2914f4425003fb90ea74a5603 (diff) | |
download | external_llvm-1501f8b38706264577a5769d7c77de0a11a182b0.zip external_llvm-1501f8b38706264577a5769d7c77de0a11a182b0.tar.gz external_llvm-1501f8b38706264577a5769d7c77de0a11a182b0.tar.bz2 |
merge another sse41 test into sse41.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76852 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/sse41.ll')
-rw-r--r-- | test/CodeGen/X86/sse41.ll | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/test/CodeGen/X86/sse41.ll b/test/CodeGen/X86/sse41.ll index f4b0854..170280c 100644 --- a/test/CodeGen/X86/sse41.ll +++ b/test/CodeGen/X86/sse41.ll @@ -84,3 +84,26 @@ entry: declare <4 x i32> @llvm.x86.sse41.pmovsxbd(<16 x i8>) nounwind readnone declare <4 x i32> @llvm.x86.sse41.pmovsxwd(<8 x i16>) nounwind readnone declare <2 x i64> @llvm.x86.sse41.pmovzxbq(<16 x i8>) nounwind readnone + + + + +define i32 @extractps_1(<4 x float> %v) nounwind { + %s = extractelement <4 x float> %v, i32 3 + %i = bitcast float %s to i32 + ret i32 %i + +; X32: _extractps_1: +; X32: extractps $3, %xmm0, %eax + +; X64: _extractps_1: +; X64: extractps $3, %xmm0, %eax +} +define i32 @extractps_2(<4 x float> %v) nounwind { + %t = bitcast <4 x float> %v to <4 x i32> + %s = extractelement <4 x i32> %t, i32 3 + ret i32 %s + +; X64: _extractps_2: +; X64: extractps $3, %xmm0, %eax +} |