• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2; RUN: opt -S -newgvn %s | FileCheck %s
3
4@a = external global i32
5
6define void @b() {
7; CHECK-LABEL: @b(
8; CHECK-NEXT:    br i1 false, label [[C:%.*]], label [[WHILE_D:%.*]]
9; CHECK:       while.d:
10; CHECK-NEXT:    br label [[F:%.*]]
11; CHECK:       f:
12; CHECK-NEXT:    br i1 undef, label [[IF_E:%.*]], label [[C]]
13; CHECK:       c:
14; CHECK-NEXT:    br i1 undef, label [[IF_G:%.*]], label [[IF_E]]
15; CHECK:       if.g:
16; CHECK-NEXT:    store i32 undef, i32* @a
17; CHECK-NEXT:    br label [[WHILE_D]]
18; CHECK:       if.e:
19; CHECK-NEXT:    br label [[F]]
20;
21  br i1 false, label %c, label %while.d
22
23while.d:                                          ; preds = %if.g, %0
24  br label %f
25
26f:                                                ; preds = %if.e, %while.d
27  br i1 undef, label %if.e, label %c
28
29c:                                                ; preds = %f, %0
30  br i1 undef, label %if.g, label %if.e
31
32if.g:                                             ; preds = %c
33  store i32 undef, i32* @a
34  br label %while.d
35
36if.e:                                             ; preds = %c, %f
37  br label %f
38}
39
40