| func.func @if_true_test() { |
| %0 = util.unfoldable_constant dense<true> : tensor<i1> |
| %1 = util.unfoldable_constant dense<10> : tensor<i32> |
| %path = util.unfoldable_constant 1 : i32 |
| %2 = "tosa.cond_if"(%0, %1) ( { |
| ^bb0(%arg0 : tensor<i32>): |
| check.expect_true(%path) : i32 |
| %3 = util.unfoldable_constant dense<10> : tensor<i32> |
| %4 = "tosa.add"(%arg0, %3) : (tensor<i32>, tensor<i32>) -> tensor<i32> |
| "tosa.yield"(%4) : (tensor<i32>) -> () |
| }, { |
| ^bb0(%arg0 : tensor<i32>): |
| check.expect_false(%path) : i32 |
| "tosa.yield"(%arg0) : (tensor<i32>) -> () |
| }) : (tensor<i1>, tensor<i32>) -> (tensor<i32>) |
| check.expect_eq_const(%2, dense<20> : tensor<i32>) : tensor<i32> |
| return |
| } |
| |
| func.func @if_false_test() { |
| %0 = util.unfoldable_constant dense<false> : tensor<i1> |
| %1 = util.unfoldable_constant dense<10> : tensor<i32> |
| %path = util.unfoldable_constant 0 : i32 |
| %2 = "tosa.cond_if"(%0, %1) ( { |
| ^bb0(%arg0 : tensor<i32>): |
| check.expect_true(%path) : i32 |
| "tosa.yield"(%arg0) : (tensor<i32>) -> () |
| }, { |
| ^bb0(%arg0 : tensor<i32>): |
| check.expect_false(%path) : i32 |
| %3 = util.unfoldable_constant dense<10> : tensor<i32> |
| %4 = "tosa.add"(%arg0, %3) : (tensor<i32>, tensor<i32>) -> tensor<i32> |
| "tosa.yield"(%4) : (tensor<i32>) -> () |
| }) : (tensor<i1>, tensor<i32>) -> (tensor<i32>) |
| check.expect_eq_const(%2, dense<20> : tensor<i32>) : tensor<i32> |
| return |
| } |
| |