[RISCV] Add Qualcomm uC Xqcics(Conditional Select) extension (#119504)
[llvm-project.git] / mlir / test / Conversion / SPIRVToLLVM / spirv-types-to-llvm.mlir
blob0f2dbf8ef115587dbbac0922757f1dc7e3fd17fa
1 // RUN: mlir-opt -split-input-file -convert-spirv-to-llvm -verify-diagnostics %s | FileCheck %s
3 //===----------------------------------------------------------------------===//
4 // Array type
5 //===----------------------------------------------------------------------===//
7 // CHECK-LABEL: @array(!llvm.array<16 x f32>, !llvm.array<32 x vector<4xf32>>)
8 spirv.func @array(!spirv.array<16 x f32>, !spirv.array< 32 x vector<4xf32> >) "None"
10 // CHECK-LABEL: @array_with_natural_stride(!llvm.array<16 x f32>)
11 spirv.func @array_with_natural_stride(!spirv.array<16 x f32, stride=4>) "None"
13 //===----------------------------------------------------------------------===//
14 // Pointer type
15 //===----------------------------------------------------------------------===//
17 // CHECK-LABEL: @pointer_scalar(!llvm.ptr, !llvm.ptr)
18 spirv.func @pointer_scalar(!spirv.ptr<i1, Uniform>, !spirv.ptr<f32, Private>) "None"
20 // CHECK-LABEL: @pointer_vector(!llvm.ptr)
21 spirv.func @pointer_vector(!spirv.ptr<vector<4xi32>, Function>) "None"
23 //===----------------------------------------------------------------------===//
24 // Runtime array type
25 //===----------------------------------------------------------------------===//
27 // CHECK-LABEL: @runtime_array_vector(!llvm.array<0 x vector<4xf32>>)
28 spirv.func @runtime_array_vector(!spirv.rtarray< vector<4xf32> >) "None"
30 // CHECK-LABEL: @runtime_array_scalar(!llvm.array<0 x f32>)
31 spirv.func @runtime_array_scalar(!spirv.rtarray<f32>) "None"
33 //===----------------------------------------------------------------------===//
34 // Struct type
35 //===----------------------------------------------------------------------===//
37 // CHECK-LABEL: @struct(!llvm.struct<packed (f64)>)
38 spirv.func @struct(!spirv.struct<(f64)>) "None"
40 // CHECK-LABEL: @struct_nested(!llvm.struct<packed (i32, struct<packed (i64, i32)>)>)
41 spirv.func @struct_nested(!spirv.struct<(i32, !spirv.struct<(i64, i32)>)>) "None"
43 // CHECK-LABEL: @struct_with_natural_offset(!llvm.struct<(i8, i32)>)
44 spirv.func @struct_with_natural_offset(!spirv.struct<(i8[0], i32[4])>) "None"