| ; RUN: llc -O0 -mtriple=spirv32-unknown-unknown %s -o - | FileCheck %s --check-prefix=CHECK-SPIRV |
| |
| ;; This test checks SYCL relational builtin any and all with vector input types. |
| |
| ; CHECK-SPIRV: %[[#BoolTypeID:]] = OpTypeBool |
| |
| ; CHECK-SPIRV: OpAny %[[#BoolTypeID]] |
| ; CHECK-SPIRV: OpAny %[[#BoolTypeID]] |
| ; CHECK-SPIRV: OpAny %[[#BoolTypeID]] |
| ; CHECK-SPIRV: OpAny %[[#BoolTypeID]] |
| ; CHECK-SPIRV: OpAll %[[#BoolTypeID]] |
| ; CHECK-SPIRV: OpAll %[[#BoolTypeID]] |
| ; CHECK-SPIRV: OpAll %[[#BoolTypeID]] |
| ; CHECK-SPIRV: OpAll %[[#BoolTypeID]] |
| |
| define dso_local spir_func void @test_vector(i32 addrspace(4)* nocapture writeonly %out, <2 x i8> %c, <2 x i16> %s, <2 x i32> %i, <2 x i64> %l) local_unnamed_addr { |
| entry: |
| %call = tail call spir_func i32 @_Z3anyDv2_c(<2 x i8> %c) |
| %call1 = tail call spir_func i32 @_Z3anyDv2_s(<2 x i16> %s) |
| %add = add nsw i32 %call1, %call |
| %call2 = tail call spir_func i32 @_Z3anyDv2_i(<2 x i32> %i) |
| %add3 = add nsw i32 %add, %call2 |
| %call4 = tail call spir_func i32 @_Z3anyDv2_l(<2 x i64> %l) |
| %add5 = add nsw i32 %add3, %call4 |
| %call6 = tail call spir_func i32 @_Z3allDv2_c(<2 x i8> %c) |
| %add7 = add nsw i32 %add5, %call6 |
| %call8 = tail call spir_func i32 @_Z3allDv2_s(<2 x i16> %s) |
| %add9 = add nsw i32 %add7, %call8 |
| %call10 = tail call spir_func i32 @_Z3allDv2_i(<2 x i32> %i) |
| %add11 = add nsw i32 %add9, %call10 |
| %call12 = tail call spir_func i32 @_Z3allDv2_l(<2 x i64> %l) |
| %add13 = add nsw i32 %add11, %call12 |
| store i32 %add13, i32 addrspace(4)* %out, align 4 |
| ret void |
| } |
| |
| declare spir_func i32 @_Z3anyDv2_c(<2 x i8>) local_unnamed_addr |
| |
| declare spir_func i32 @_Z3anyDv2_s(<2 x i16>) local_unnamed_addr |
| |
| declare spir_func i32 @_Z3anyDv2_i(<2 x i32>) local_unnamed_addr |
| |
| declare spir_func i32 @_Z3anyDv2_l(<2 x i64>) local_unnamed_addr |
| |
| declare spir_func i32 @_Z3allDv2_c(<2 x i8>) local_unnamed_addr |
| |
| declare spir_func i32 @_Z3allDv2_s(<2 x i16>) local_unnamed_addr |
| |
| declare spir_func i32 @_Z3allDv2_i(<2 x i32>) local_unnamed_addr |
| |
| declare spir_func i32 @_Z3allDv2_l(<2 x i64>) local_unnamed_addr |