Mercurial > hg > CbC > CbC_llvm
comparison test/CodeGen/X86/sse42-intrinsics-x86.ll @ 95:afa8332a0e37 LLVM3.8
LLVM 3.8
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 13 Oct 2015 17:48:58 +0900 |
parents | 95c75e76d11b |
children | 1172e4bd9c6f |
comparison
equal
deleted
inserted
replaced
84:f3e34b893a5f | 95:afa8332a0e37 |
---|---|
14 define i32 @test_x86_sse42_pcmpestri128_load(<16 x i8>* %a0, <16 x i8>* %a2) { | 14 define i32 @test_x86_sse42_pcmpestri128_load(<16 x i8>* %a0, <16 x i8>* %a2) { |
15 ; CHECK: movl $7 | 15 ; CHECK: movl $7 |
16 ; CHECK: movl $7 | 16 ; CHECK: movl $7 |
17 ; CHECK: pcmpestri $7, ( | 17 ; CHECK: pcmpestri $7, ( |
18 ; CHECK: movl | 18 ; CHECK: movl |
19 %1 = load <16 x i8>* %a0 | 19 %1 = load <16 x i8>, <16 x i8>* %a0 |
20 %2 = load <16 x i8>* %a2 | 20 %2 = load <16 x i8>, <16 x i8>* %a2 |
21 %res = call i32 @llvm.x86.sse42.pcmpestri128(<16 x i8> %1, i32 7, <16 x i8> %2, i32 7, i8 7) ; <i32> [#uses=1] | 21 %res = call i32 @llvm.x86.sse42.pcmpestri128(<16 x i8> %1, i32 7, <16 x i8> %2, i32 7, i8 7) ; <i32> [#uses=1] |
22 ret i32 %res | 22 ret i32 %res |
23 } | 23 } |
24 | 24 |
25 | 25 |
92 define <16 x i8> @test_x86_sse42_pcmpestrm128_load(<16 x i8> %a0, <16 x i8>* %a2) { | 92 define <16 x i8> @test_x86_sse42_pcmpestrm128_load(<16 x i8> %a0, <16 x i8>* %a2) { |
93 ; CHECK: movl $7 | 93 ; CHECK: movl $7 |
94 ; CHECK: movl $7 | 94 ; CHECK: movl $7 |
95 ; CHECK: pcmpestrm $7, | 95 ; CHECK: pcmpestrm $7, |
96 ; CHECK-NOT: vmov | 96 ; CHECK-NOT: vmov |
97 %1 = load <16 x i8>* %a2 | 97 %1 = load <16 x i8>, <16 x i8>* %a2 |
98 %res = call <16 x i8> @llvm.x86.sse42.pcmpestrm128(<16 x i8> %a0, i32 7, <16 x i8> %1, i32 7, i8 7) ; <<16 x i8>> [#uses=1] | 98 %res = call <16 x i8> @llvm.x86.sse42.pcmpestrm128(<16 x i8> %a0, i32 7, <16 x i8> %1, i32 7, i8 7) ; <<16 x i8>> [#uses=1] |
99 ret <16 x i8> %res | 99 ret <16 x i8> %res |
100 } | 100 } |
101 | 101 |
102 | 102 |
110 | 110 |
111 | 111 |
112 define i32 @test_x86_sse42_pcmpistri128_load(<16 x i8>* %a0, <16 x i8>* %a1) { | 112 define i32 @test_x86_sse42_pcmpistri128_load(<16 x i8>* %a0, <16 x i8>* %a1) { |
113 ; CHECK: pcmpistri $7, ( | 113 ; CHECK: pcmpistri $7, ( |
114 ; CHECK: movl | 114 ; CHECK: movl |
115 %1 = load <16 x i8>* %a0 | 115 %1 = load <16 x i8>, <16 x i8>* %a0 |
116 %2 = load <16 x i8>* %a1 | 116 %2 = load <16 x i8>, <16 x i8>* %a1 |
117 %res = call i32 @llvm.x86.sse42.pcmpistri128(<16 x i8> %1, <16 x i8> %2, i8 7) ; <i32> [#uses=1] | 117 %res = call i32 @llvm.x86.sse42.pcmpistri128(<16 x i8> %1, <16 x i8> %2, i8 7) ; <i32> [#uses=1] |
118 ret i32 %res | 118 ret i32 %res |
119 } | 119 } |
120 | 120 |
121 | 121 |
174 | 174 |
175 | 175 |
176 define <16 x i8> @test_x86_sse42_pcmpistrm128_load(<16 x i8> %a0, <16 x i8>* %a1) { | 176 define <16 x i8> @test_x86_sse42_pcmpistrm128_load(<16 x i8> %a0, <16 x i8>* %a1) { |
177 ; CHECK: pcmpistrm $7, ( | 177 ; CHECK: pcmpistrm $7, ( |
178 ; CHECK-NOT: vmov | 178 ; CHECK-NOT: vmov |
179 %1 = load <16 x i8>* %a1 | 179 %1 = load <16 x i8>, <16 x i8>* %a1 |
180 %res = call <16 x i8> @llvm.x86.sse42.pcmpistrm128(<16 x i8> %a0, <16 x i8> %1, i8 7) ; <<16 x i8>> [#uses=1] | 180 %res = call <16 x i8> @llvm.x86.sse42.pcmpistrm128(<16 x i8> %a0, <16 x i8> %1, i8 7) ; <<16 x i8>> [#uses=1] |
181 ret <16 x i8> %res | 181 ret <16 x i8> %res |
182 } | 182 } |