| ; RUN: not llc < %s -mcpu=skylake-avx512 2>&1 | FileCheck %s | |
| target triple = "x86_64-unknown-linux-gnu" | |
| ; make sure we don't crash if scale for gather isn't constant. | |
| ; CHECK: LLVM ERROR: Cannot select: intrinsic %llvm.x86.avx512.gather.dpi.512 | |
| declare <16 x i32> @llvm.x86.avx512.gather.dpi.512(<16 x i32>, i8*, <16 x i32>, i16, i32) | |
| define internal <16 x i32> @__gather_base_offsets32_i32(i8* readonly %ptr, i32 %offset_scale, <16 x i32> %offsets, <16 x i8> %vecmask) { | |
| %mask_vec_i1.i.i = icmp ne <16 x i8> %vecmask, zeroinitializer | |
| %mask_i16.i = bitcast <16 x i1> %mask_vec_i1.i.i to i16 | |
| %res = tail call <16 x i32> @llvm.x86.avx512.gather.dpi.512(<16 x i32> undef, i8* %ptr, <16 x i32> %offsets, i16 %mask_i16.i, i32 %offset_scale) | |
| ret <16 x i32> %res | |
| } |