brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 68a825f Raw
29 lines · plain
1// RUN: mlir-opt -convert-scf-to-spirv %s -o - | FileCheck %s2 3// CHECK-LABEL: @forward4func.func @forward() {5  // CHECK: %[[LB:.*]] = spirv.Constant 0 : i326  %c0 = arith.constant 0 : index7  // CHECK: %[[UB:.*]] = spirv.Constant 32 : i328  %c32 = arith.constant 32 : index9  // CHECK: %[[STEP:.*]] = spirv.Constant 1 : i3210  %c1 = arith.constant 1 : index11 12  // CHECK:      spirv.mlir.loop {13  // CHECK-NEXT:   spirv.Branch ^[[HEADER:.*]](%[[LB]] : i32)14  // CHECK:      ^[[HEADER]](%[[INDVAR:.*]]: i32):15  // CHECK:        %[[CMP:.*]] = spirv.SLessThan %[[INDVAR]], %[[UB]] : i3216  // CHECK:        spirv.BranchConditional %[[CMP]], ^[[BODY:.*]], ^[[MERGE:.*]]17  // CHECK:      ^[[BODY]]:18  // CHECK:        %[[X:.*]] = spirv.IAdd %[[INDVAR]], %[[INDVAR]] : i3219  // CHECK:        %[[INDNEXT:.*]] = spirv.IAdd %[[INDVAR]], %[[STEP]] : i3220  // CHECK:        spirv.Branch ^[[HEADER]](%[[INDNEXT]] : i32)21  // CHECK:      ^[[MERGE]]:22  // CHECK:        spirv.mlir.merge23  // CHECK:      }24  scf.for %arg2 = %c0 to %c32 step %c1 {25      %1 = index.add %arg2, %arg226  }27  return28}29