blob: a92d25f43ea9460504d717e847c1de772cc28136 [file] [edit]
; RUN: not --crash llc -O0 -mtriple=spirv32-unknown-unknown %s -o /dev/null 2>&1 | FileCheck %s
; RUN: not --crash llc -O0 -mtriple=spirv64-unknown-unknown %s -o /dev/null 2>&1 | FileCheck %s
; __spirv_Select can pair a vector boolean condition with scalar operands,
; which is malformed for OpSelect and must be diagnosed.
; CHECK: LLVM ERROR: OpSelect with a scalar result requires a scalar boolean condition
define spir_kernel void @bad_select(i32 %a, i32 %b, ptr addrspace(1) %out, <4 x i1> %cond) {
entry:
%call = call spir_func i32 @_Z14__spirv_SelectDv4_bii(<4 x i1> %cond, i32 %a, i32 %b)
store i32 %call, ptr addrspace(1) %out
ret void
}
declare spir_func i32 @_Z14__spirv_SelectDv4_bii(<4 x i1>, i32, i32)