blob: e458e4bbe7a309618452d7e6bdf57e0e4c6c537e [file] [edit]
; RUN: opt -S -passes=spirv-legalize-zero-size-arrays -mtriple=spirv64-unknown-unknown < %s | FileCheck %s
; Test that select of zero-size array is replaced with poison.
; Can't run spirv-val as function signatures are not handled.
; RUNx: %if spirv-tools %{ llc -O0 -mtriple=spirv64-unknown-unknown %s -o - -filetype=obj | spirv-val %}
define [0 x i32] @test_select_zero_array(i1 %cond, [0 x i32] %a) {
; CHECK-LABEL: @test_select_zero_array(
; CHECK-NEXT: ret [0 x i32] poison
%result = select i1 %cond, [0 x i32] zeroinitializer, [0 x i32] %a
ret [0 x i32] %result
}