[clang][modules] Don't prevent translation of FW_Private includes when explicitly...
[llvm-project.git] / llvm / test / Transforms / FixIrreducible / bug45623.ll
blob89d31dd4fea6b8a615e449ebdb675d2cd259f7d7
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2 ; RUN: opt < %s -fix-irreducible -S | FileCheck %s
4 define dso_local void @tre_tnfa_run_backtrack() {
5 ; CHECK-LABEL: @tre_tnfa_run_backtrack(
6 ; CHECK-NEXT:  entry:
7 ; CHECK-NEXT:    br label [[RETRY:%.*]]
8 ; CHECK:       retry:
9 ; CHECK-NEXT:    br label [[IRR_GUARD:%.*]]
10 ; CHECK:       while.body248:
11 ; CHECK-NEXT:    br i1 undef, label [[IF_THEN250:%.*]], label [[IF_END275:%.*]]
12 ; CHECK:       if.then250:
13 ; CHECK-NEXT:    br label [[FOR_COND264:%.*]]
14 ; CHECK:       for.cond264:
15 ; CHECK-NEXT:    br i1 undef, label [[FOR_BODY267:%.*]], label [[IRR_GUARD]]
16 ; CHECK:       for.body267:
17 ; CHECK-NEXT:    br label [[FOR_COND264]]
18 ; CHECK:       if.end275:
19 ; CHECK-NEXT:    br label [[FOR_COND342:%.*]]
20 ; CHECK:       for.cond342:
21 ; CHECK-NEXT:    br i1 undef, label [[FOR_BODY345:%.*]], label [[FOR_END580:%.*]]
22 ; CHECK:       for.body345:
23 ; CHECK-NEXT:    br label [[FOR_COND342]]
24 ; CHECK:       for.end580:
25 ; CHECK-NEXT:    br label [[IRR_GUARD]]
26 ; CHECK:       backtrack:
27 ; CHECK-NEXT:    br i1 undef, label [[IF_THEN595:%.*]], label [[IF_ELSE629:%.*]]
28 ; CHECK:       if.then595:
29 ; CHECK-NEXT:    br label [[FOR_COND616:%.*]]
30 ; CHECK:       for.cond616:
31 ; CHECK-NEXT:    br i1 undef, label [[FOR_BODY619:%.*]], label [[FOR_END626:%.*]]
32 ; CHECK:       for.body619:
33 ; CHECK-NEXT:    br label [[FOR_COND616]]
34 ; CHECK:       for.end626:
35 ; CHECK-NEXT:    br label [[IRR_GUARD]]
36 ; CHECK:       if.else629:
37 ; CHECK-NEXT:    br label [[RETRY]]
38 ; CHECK:       irr.guard:
39 ; CHECK-NEXT:    [[GUARD_BACKTRACK:%.*]] = phi i1 [ true, [[FOR_END580]] ], [ true, [[FOR_COND264]] ], [ undef, [[RETRY]] ], [ false, [[FOR_END626]] ]
40 ; CHECK-NEXT:    br i1 [[GUARD_BACKTRACK]], label [[BACKTRACK:%.*]], label [[WHILE_BODY248:%.*]]
42 entry:
43   br label %retry
45 retry:
46   br i1 undef, label %backtrack, label %while.body248
48 while.body248:                                    ; preds = %for.end626, %retry
49   br i1 undef, label %if.then250, label %if.end275
51 if.then250:                                       ; preds = %while.body248
52   br label %for.cond264
54 for.cond264:                                      ; preds = %for.body267, %if.then250
55   br i1 undef, label %for.body267, label %backtrack
57 for.body267:                                      ; preds = %for.cond264
58   br label %for.cond264
60 if.end275:                                        ; preds = %while.body248
61   br label %for.cond342
63 for.cond342:                                      ; preds = %for.body345, %if.end275
64   br i1 undef, label %for.body345, label %for.end580
66 for.body345:                                      ; preds = %for.cond342
67   br label %for.cond342
69 for.end580:                                       ; preds = %for.cond342
70   br label %backtrack
72 backtrack:                                        ; preds = %for.end580, %for.cond264, %retry
73   br i1 undef, label %if.then595, label %if.else629
75 if.then595:                                       ; preds = %backtrack
76   br label %for.cond616
78 for.cond616:                                      ; preds = %for.body619, %if.then595
79   br i1 undef, label %for.body619, label %for.end626
81 for.body619:                                      ; preds = %for.cond616
82   br label %for.cond616
84 for.end626:                                       ; preds = %for.cond616
85   br label %while.body248
87 if.else629:                                       ; preds = %backtrack
88   br label %retry