blob: ff22c7478866b154c0bf247729a58b6d5285237c [file] [log] [blame]
; 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
}