Fix GCC build problem with 288f05f related to SmallVector. (#116958)
[llvm-project.git] / mlir / test / Transforms / inlining-recursive.mlir
bloba02fe69133ad87b21c87d417478de240df2e194e
1 // RUN: mlir-opt %s -inline='default-pipeline=''' | FileCheck %s
2 // RUN: mlir-opt %s --mlir-disable-threading -inline='default-pipeline=''' | FileCheck %s
4 // CHECK-LABEL: func.func @foo0
5 func.func @foo0(%arg0 : i32) -> i32 {
6   // CHECK: call @foo1
7   // CHECK: }
8   %0 = arith.constant 0 : i32
9   %1 = arith.cmpi eq, %arg0, %0 : i32
10   cf.cond_br %1, ^exit, ^tail
11 ^exit:
12   return %0 : i32
13 ^tail:
14   %3 = call @foo1(%arg0) : (i32) -> i32
15   return %3 : i32
18 // CHECK-LABEL: func.func @foo1
19 func.func @foo1(%arg0 : i32) -> i32 {
20   // CHECK:    call @foo1
21   %0 = arith.constant 1 : i32
22   %1 = arith.subi %arg0, %0 : i32
23   %2 = call @foo0(%1) : (i32) -> i32
24   return %2 : i32