llvm/mlir/test/Conversion/SCFToSPIRV/unsupported.mlir

// RUN: mlir-opt -convert-scf-to-spirv %s -o - | FileCheck %s

// `scf.parallel` conversion is not supported yet.
// Make sure that we do not accidentally invalidate this function by removing
// `scf.reduce`.
// CHECK-LABEL: func.func @func
// CHECK:         scf.parallel
// CHECK-NEXT:      spirv.Constant
// CHECK-NEXT:      memref.store
// CHECK-NEXT:      scf.reduce
// CHECK:         spirv.Return
func.func @func(%arg0: i64) {
  %0 = arith.index_cast %arg0 : i64 to index
  %alloc = memref.alloc() : memref<16xf32>
  scf.parallel (%arg1) = (%0) to (%0) step (%0) {
    %cst = arith.constant 1.000000e+00 : f32
    memref.store %cst, %alloc[%arg1] : memref<16xf32>
    scf.reduce
  }
  return
}