• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; REQUIRES: asserts
2; RUN: opt -regions -analyze -enable-new-pm=0 < %s | FileCheck %s
3; RUN: opt < %s -passes='print<regions>' 2>&1 | FileCheck %s
4
5; While working on improvements to region info analysis, this test
6; case caused an incorrect region bb2 => bb3 to be detected.
7
8define internal i8 @main_read() nounwind {
9bb:
10   br label %bb1
11
12bb1:
13   br i1 true, label %bb2, label %bb7
14
15bb2:
16  br i1 true, label %bb4, label %bb3
17
18bb3:
19  br i1 true, label %bb4, label %bb8
20
21bb4:
22   br label %bb5
23
24bb5:
25   br label %bb6
26
27bb6:
28   br label %bb1
29
30bb7:
31   br label %bb5
32
33bb8:
34   ret i8 1
35}
36
37; CHECK:    [0] bb => <Function Return>
38; CHECK-NEXT: [1] bb1 => bb8
39; CHECK-NEXT: End region tree
40