/external/llvm/test/CodeGen/X86/ |
D | vector-half-conversions.ll | 4 …wn -mattr=+avx512f,+f16c | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512 185 ; AVX512-LABEL: cvt_8i16_to_8f32: 186 ; AVX512: # BB#0: 187 ; AVX512-NEXT: vpextrq $1, %xmm0, %rdx 188 ; AVX512-NEXT: movq %rdx, %r8 189 ; AVX512-NEXT: movq %rdx, %r10 190 ; AVX512-NEXT: movswl %dx, %r9d 191 ; AVX512-NEXT: # kill: %EDX<def> %EDX<kill> %RDX<kill> 192 ; AVX512-NEXT: shrl $16, %edx 193 ; AVX512-NEXT: shrq $32, %r8 [all …]
|
D | fma_patterns.ll | 6 …mattr=+avx512dq,+avx512vl -fp-contract=fast | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 23 ; AVX512-LABEL: test_f32_fmadd: 24 ; AVX512: # BB#0: 25 ; AVX512-NEXT: vfmadd213ss %xmm2, %xmm0, %xmm1 26 ; AVX512-NEXT: vmovaps %zmm1, %zmm0 27 ; AVX512-NEXT: retq 44 ; AVX512-LABEL: test_4f32_fmadd: 45 ; AVX512: # BB#0: 46 ; AVX512-NEXT: vfmadd213ps %xmm2, %xmm1, %xmm0 47 ; AVX512-NEXT: retq [all …]
|
D | fma_patterns_wide.ll | 5 …iple=x86_64-unknown-unknown -mattr=+avx512dq -fp-contract=fast | FileCheck %s --check-prefix=AVX512 24 ; AVX512-LABEL: test_16f32_fmadd: 25 ; AVX512: # BB#0: 26 ; AVX512-NEXT: vfmadd213ps %zmm2, %zmm1, %zmm0 27 ; AVX512-NEXT: retq 46 ; AVX512-LABEL: test_8f64_fmadd: 47 ; AVX512: # BB#0: 48 ; AVX512-NEXT: vfmadd213pd %zmm2, %zmm1, %zmm0 49 ; AVX512-NEXT: retq 72 ; AVX512-LABEL: test_16f32_fmsub: [all …]
|
D | vector-compare-results.ll | 6 …unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 155 ; AVX512-LABEL: test_cmp_v4f64: 156 ; AVX512: # BB#0: 157 ; AVX512-NEXT: vcmpltpd %ymm0, %ymm1, %ymm0 158 ; AVX512-NEXT: vpmovqd %zmm0, %ymm0 159 ; AVX512-NEXT: # kill: %XMM0<def> %XMM0<kill> %YMM0<kill> 160 ; AVX512-NEXT: retq 209 ; AVX512-LABEL: test_cmp_v8f32: 210 ; AVX512: # BB#0: 211 ; AVX512-NEXT: vcmpltps %ymm0, %ymm1, %ymm0 [all …]
|
D | fast-isel-nontemporal.ll | 7 …12f -fast-isel -O0 < %s | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 8 …2bw -fast-isel -O0 < %s | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 55 ; AVX512-LABEL: test_ntfloat: 56 ; AVX512: # BB#0: # %entry 57 ; AVX512-NEXT: vmovss %xmm0, (%rdi) 58 ; AVX512-NEXT: retq 85 ; AVX512-LABEL: test_ntdouble: 86 ; AVX512: # BB#0: # %entry 87 ; AVX512-NEXT: vmovsd %xmm0, (%rdi) 88 ; AVX512-NEXT: retq [all …]
|
D | vec_shift6.ll | 4 …RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mattr=avx512f | FileCheck %s --check-prefix=AVX512 21 ; AVX512-LABEL: test1: 22 ; AVX512: # BB#0: 23 ; AVX512-NEXT: vpmullw {{.*}}(%rip), %xmm0, %xmm0 24 ; AVX512-NEXT: retq 40 ; AVX512-LABEL: test2: 41 ; AVX512: # BB#0: 42 ; AVX512-NEXT: vpmullw {{.*}}(%rip), %xmm0, %xmm0 43 ; AVX512-NEXT: retq 63 ; AVX512-LABEL: test3: [all …]
|
D | avx512-scalar.ll | 1 …< %s -mtriple=x86_64-apple-darwin -mcpu=knl --show-mc-encoding | FileCheck %s --check-prefix AVX512 4 ; AVX512-LABEL: @test_fdiv 5 ; AVX512: vdivss %xmm{{.*}} ## encoding: [0x62 14 ; AVX512-LABEL: @test_fsub 15 ; AVX512: vsubss %xmm{{.*}} ## encoding: [0x62 24 ; AVX512-LABEL: @test_fadd 25 ; AVX512: vaddsd %xmm{{.*}} ## encoding: [0x62 41 ; AVX512-LABEL: @test_trunc 42 ; AVX512: vrndscaless 51 ; AVX512-LABEL: @test_sqrt [all …]
|
D | vector-shift-shl-256.ll | 6 …pu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 47 ; AVX512-LABEL: var_shift_v4i64: 48 ; AVX512: ## BB#0: 49 ; AVX512-NEXT: vpsllvq %ymm1, %ymm0, %ymm0 50 ; AVX512-NEXT: retq 91 ; AVX512-LABEL: var_shift_v8i32: 92 ; AVX512: ## BB#0: 93 ; AVX512-NEXT: vpsllvd %ymm1, %ymm0, %ymm0 94 ; AVX512-NEXT: retq 167 ; AVX512-LABEL: var_shift_v16i16: [all …]
|
D | vector-shift-ashr-256.ll | 6 …pu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 68 ; AVX512-LABEL: var_shift_v4i64: 69 ; AVX512: ## BB#0: 70 ; AVX512-NEXT: vpbroadcastq {{.*}}(%rip), %ymm2 71 ; AVX512-NEXT: vpsrlvq %ymm1, %ymm2, %ymm3 72 ; AVX512-NEXT: vpxor %ymm2, %ymm0, %ymm0 73 ; AVX512-NEXT: vpsrlvq %ymm1, %ymm0, %ymm0 74 ; AVX512-NEXT: vpsubq %ymm3, %ymm0, %ymm0 75 ; AVX512-NEXT: retq 133 ; AVX512-LABEL: var_shift_v8i32: [all …]
|
D | nontemporal-loads.ll | 6 …ple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512 --check-prefix=AVX… 7 …le=x86_64-unknown-unknown -mattr=+avx512bw | FileCheck %s --check-prefix=AVX512 --check-prefix=AVX… 8 …le=x86_64-unknown-unknown -mattr=+avx512vl | FileCheck %s --check-prefix=AVX512 --check-prefix=AVX… 26 ; AVX512-LABEL: test_v4f32: 27 ; AVX512: # BB#0: 28 ; AVX512-NEXT: vmovntdqa (%rdi), %xmm0 29 ; AVX512-NEXT: retq 84 ; AVX512-LABEL: test_v2f64: 85 ; AVX512: # BB#0: 86 ; AVX512-NEXT: vmovntdqa (%rdi), %xmm0 [all …]
|
D | vector-shift-lshr-256.ll | 6 …pu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 49 ; AVX512-LABEL: var_shift_v4i64: 50 ; AVX512: ## BB#0: 51 ; AVX512-NEXT: vpsrlvq %ymm1, %ymm0, %ymm0 52 ; AVX512-NEXT: retq 110 ; AVX512-LABEL: var_shift_v8i32: 111 ; AVX512: ## BB#0: 112 ; AVX512-NEXT: vpsrlvd %ymm1, %ymm0, %ymm0 113 ; AVX512-NEXT: retq 192 ; AVX512-LABEL: var_shift_v16i16: [all …]
|
D | vector-shift-shl-128.ll | 8 …pu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 60 ; AVX512-LABEL: var_shift_v2i64: 61 ; AVX512: ## BB#0: 62 ; AVX512-NEXT: vpsllvq %xmm1, %xmm0, %xmm0 63 ; AVX512-NEXT: retq 126 ; AVX512-LABEL: var_shift_v4i32: 127 ; AVX512: ## BB#0: 128 ; AVX512-NEXT: vpsllvd %xmm1, %xmm0, %xmm0 129 ; AVX512-NEXT: retq 249 ; AVX512-LABEL: var_shift_v8i16: [all …]
|
D | vector-shift-ashr-128.ll | 8 …pu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 82 ; AVX512-LABEL: var_shift_v2i64: 83 ; AVX512: ## BB#0: 84 ; AVX512-NEXT: vmovdqa {{.*#+}} xmm2 = [9223372036854775808,9223372036854775808] 85 ; AVX512-NEXT: vpsrlvq %xmm1, %xmm2, %xmm3 86 ; AVX512-NEXT: vpxor %xmm2, %xmm0, %xmm0 87 ; AVX512-NEXT: vpsrlvq %xmm1, %xmm0, %xmm0 88 ; AVX512-NEXT: vpsubq %xmm3, %xmm0, %xmm0 89 ; AVX512-NEXT: retq 191 ; AVX512-LABEL: var_shift_v4i32: [all …]
|
D | musttail-fastcall.ll | 3 …=i686-pc-win32 -mattr=+sse2,+avx,+avx512f | FileCheck %s --check-prefix=CHECK --check-prefix=AVX512 71 ; AVX512-DAG: vmovups %zmm0, {{.*}} 72 ; AVX512-DAG: vmovups %zmm1, {{.*}} 73 ; AVX512-DAG: vmovups %zmm2, {{.*}} 74 ; AVX512-DAG: vmovups %zmm3, {{.*}} 75 ; AVX512-DAG: vmovups %zmm4, {{.*}} 76 ; AVX512-DAG: vmovups %zmm5, {{.*}} 94 ; AVX512-DAG: vmovups {{.*}}, %zmm0 95 ; AVX512-DAG: vmovups {{.*}}, %zmm1 96 ; AVX512-DAG: vmovups {{.*}}, %zmm2 [all …]
|
D | vector-shift-lshr-128.ll | 8 …pu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX… 62 ; AVX512-LABEL: var_shift_v2i64: 63 ; AVX512: ## BB#0: 64 ; AVX512-NEXT: vpsrlvq %xmm1, %xmm0, %xmm0 65 ; AVX512-NEXT: retq 160 ; AVX512-LABEL: var_shift_v4i32: 161 ; AVX512: ## BB#0: 162 ; AVX512-NEXT: vpsrlvd %xmm1, %xmm0, %xmm0 163 ; AVX512-NEXT: retq 294 ; AVX512-LABEL: var_shift_v8i16: [all …]
|
D | vector-trunc-math.ll | 5 …512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 6 …12bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 43 ; AVX512-LABEL: trunc_add_v4i64_4i32: 44 ; AVX512: # BB#0: 45 ; AVX512-NEXT: vpaddq %ymm1, %ymm0, %ymm0 46 ; AVX512-NEXT: vpmovqd %zmm0, %ymm0 47 ; AVX512-NEXT: # kill: %XMM0<def> %XMM0<kill> %YMM0<kill> 48 ; AVX512-NEXT: retq 114 ; AVX512-LABEL: trunc_add_v8i64_8i16: 115 ; AVX512: # BB#0: [all …]
|
D | viabs.ll | 6 … %s -mtriple=x86_64-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX --check-prefix=AVX512 164 ; AVX512-LABEL: test6: 165 ; AVX512: # BB#0: 166 ; AVX512-NEXT: vpabsd %ymm0, %ymm0 167 ; AVX512-NEXT: retq 210 ; AVX512-LABEL: test7: 211 ; AVX512: # BB#0: 212 ; AVX512-NEXT: vpabsd %ymm0, %ymm0 213 ; AVX512-NEXT: retq 256 ; AVX512-LABEL: test8: [all …]
|
D | vector-zext.ll | 7 …unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 76 ; AVX512-LABEL: zext_16i8_to_16i16: 77 ; AVX512: # BB#0: # %entry 78 ; AVX512-NEXT: vpmovzxbw {{.*#+}} ymm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm… 79 ; AVX512-NEXT: retq 157 ; AVX512-LABEL: zext_16i8_to_8i32: 158 ; AVX512: # BB#0: # %entry 159 ; AVX512-NEXT: vpmovzxbd {{.*#+}} ymm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],z… 160 ; AVX512-NEXT: retq 236 ; AVX512-LABEL: zext_16i8_to_4i64: [all …]
|
D | vec_minmax_uint.ll | 7 …512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 8 …12bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 191 ; AVX512-LABEL: max_gt_v4i64: 192 ; AVX512: # BB#0: 193 ; AVX512-NEXT: vpbroadcastq {{.*}}(%rip), %ymm2 194 ; AVX512-NEXT: vpxor %ymm2, %ymm1, %ymm3 195 ; AVX512-NEXT: vpxor %ymm2, %ymm0, %ymm2 196 ; AVX512-NEXT: vpcmpgtq %ymm3, %ymm2, %ymm2 197 ; AVX512-NEXT: vblendvpd %ymm2, %ymm0, %ymm1, %ymm0 198 ; AVX512-NEXT: retq [all …]
|
D | sse3-avx-addsub.ll | 4 …le=x86_64-unknown-linux-gnu -mattr=+avx512f | FileCheck %s --check-prefix=AVX --check-prefix=AVX512 120 ; AVX512-LABEL: test5: 121 ; AVX512: # BB#0: 122 ; AVX512-NEXT: vaddps %zmm1, %zmm0, %zmm2 123 ; AVX512-NEXT: vsubps %zmm1, %zmm0, %zmm0 124 ; AVX512-NEXT: vshufps {{.*#+}} zmm0 = zmm0[0,2],zmm2[1,3],zmm0[4,6],zmm2[5,7],zmm0[8,10],zmm2[9… 125 ; AVX512-NEXT: vpermilps {{.*#+}} zmm0 = zmm0[0,2,1,3,4,6,5,7,8,10,9,11,12,14,13,15] 126 ; AVX512-NEXT: retq 148 ; AVX512-LABEL: test6: 149 ; AVX512: # BB#0: [all …]
|
D | vec_minmax_sint.ll | 7 …512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 8 …12bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512 --check-prefix=AVX… 169 ; AVX512-LABEL: max_gt_v4i64: 170 ; AVX512: # BB#0: 171 ; AVX512-NEXT: vpcmpgtq %ymm1, %ymm0, %ymm2 172 ; AVX512-NEXT: vblendvpd %ymm2, %ymm0, %ymm1, %ymm0 173 ; AVX512-NEXT: retq 252 ; AVX512-LABEL: max_gt_v8i32: 253 ; AVX512: # BB#0: 254 ; AVX512-NEXT: vpmaxsd %ymm1, %ymm0, %ymm0 [all …]
|
/external/llvm/test/Transforms/LoopVectorize/X86/ |
D | masked_load_store.ll | 3 ; RUN: opt < %s -O3 -mcpu=knl -S | FileCheck %s -check-prefix=AVX512 26 ;AVX512-LABEL: @foo1 27 ;AVX512: icmp slt <16 x i32> %wide.load, <i32 100, i32 100, i32 100 28 ;AVX512: call <16 x i32> @llvm.masked.load.v16i32.p0v16i32 29 ;AVX512: add nsw <16 x i32> 30 ;AVX512: call void @llvm.masked.store.v16i32.p0v16i32 31 ;AVX512: ret void 101 ;AVX512-LABEL: @foo1_addrspace1 102 ;AVX512: icmp slt <16 x i32> %wide.load, <i32 100, i32 100, i32 100 103 ;AVX512: call <16 x i32> @llvm.masked.load.v16i32.p1v16i32 [all …]
|
D | gather_scatter.ll | 1 ; RUN: opt < %s -O3 -mcpu=knl -S | FileCheck %s -check-prefix=AVX512 19 ;AVX512-LABEL: @foo1 20 ;AVX512: llvm.masked.load.v16i32 21 ;AVX512: llvm.masked.gather.v16f32 22 ;AVX512: llvm.masked.store.v16f32 23 ;AVX512: ret void 97 ;AVX512-LABEL: @foo2 98 ;AVX512: getelementptr inbounds %struct.In, %struct.In* %in, <16 x i64> %{{.*}}, i32 1 99 ;AVX512: llvm.masked.gather.v16f32 100 ;AVX512: llvm.masked.store.v16f32 [all …]
|
/external/llvm/test/Analysis/CostModel/X86/ |
D | cast.ll | 1 …x86_64-apple-macosx10.8.0 -mcpu=knl | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-AVX512 87 ;CHECK-AVX512: cost of 1 {{.*}} %D1 = zext 90 ;CHECK-AVX512: cost of 1 {{.*}} %D2 = sext 93 ;CHECK-AVX512: cost of 1 {{.*}} %D3 = zext 95 ;CHECK-AVX512: cost of 1 {{.*}} %D4 = zext 97 ;CHECK-AVX512: cost of 2 {{.*}} %D5 = zext 121 ;CHECK-AVX512: cost of 1 {{.*}} %G1 = trunc 124 ;CHECK-AVX512: cost of 1 {{.*}} %G2 = trunc 225 ; CHECK-AVX512: cost of 2 {{.*}} uitofp 229 ; CHECK-AVX512: cost of 2 {{.*}} uitofp [all …]
|
D | cmp.ll | 8 …macosx10.8.0 -mcpu=knl | FileCheck --check-prefix=CHECK --check-prefix=AVX --check-prefix=AVX512 %s 55 ; AVX512: cost of 1 {{.*}} %E1 = fcmp 58 ; AVX512: cost of 1 {{.*}} %E2 = fcmp 61 ; AVX512: cost of 2 {{.*}} %E3 = fcmp 134 ; AVX512: cost of 1 {{.*}} %M1 = icmp 137 ; AVX512: cost of 1 {{.*}} %M2 = icmp 140 ; AVX512: cost of 2 {{.*}} %M3 = icmp
|