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 }