File tree Expand file tree Collapse file tree 1 file changed +29
-1
lines changed Expand file tree Collapse file tree 1 file changed +29
-1
lines changed Original file line number Diff line number Diff line change 1
- // RUN: mlir-opt %s -canonicalize | FileCheck %s
1
+ // RUN: mlir-opt %s -pass-pipeline='builtin.module(llvm.func( canonicalize{region-simplify=aggressive}))' -split-input-file | FileCheck %s
2
2
3
3
// CHECK-LABEL: llvm.func @ba()
4
4
llvm.func @ba () -> !llvm.ptr {
@@ -9,3 +9,31 @@ llvm.func @ba() -> !llvm.ptr {
9
9
llvm.blocktag <id = 1 >
10
10
llvm.return %0 : !llvm.ptr
11
11
}
12
+
13
+ // -----
14
+
15
+
16
+ llvm.mlir.global private @g () {addr_space = 0 : i32 , dso_local } : !llvm.ptr {
17
+ %0 = llvm.blockaddress <function = @fn , tag = <id = 0 >> : !llvm.ptr
18
+ llvm.return %0 : !llvm.ptr
19
+ }
20
+
21
+ llvm.mlir.global private @h () {addr_space = 0 : i32 , dso_local } : !llvm.ptr {
22
+ %0 = llvm.blockaddress <function = @fn , tag = <id = 1 >> : !llvm.ptr
23
+ llvm.return %0 : !llvm.ptr
24
+ }
25
+
26
+ // CHECK-LABEL: llvm.func @fn
27
+ llvm.func @fn (%cond : i1 , %arg0 : i32 , %arg1 : i32 ) -> i32 {
28
+ llvm.cond_br %cond , ^bb1 , ^bb2
29
+ ^bb1 :
30
+ // CHECK: llvm.blocktag <id = 0>
31
+ // CHECK: llvm.return
32
+ llvm.blocktag <id = 0 >
33
+ llvm.return %arg0 : i32
34
+ ^bb2 :
35
+ // CHECK: llvm.blocktag <id = 1>
36
+ // CHECK: llvm.return
37
+ llvm.blocktag <id = 1 >
38
+ llvm.return %arg1 : i32
39
+ }
You can’t perform that action at this time.
0 commit comments