Home | History | Annotate | Download | only in NewGVN
      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 
      6 define 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 
     23 while.d:                                          ; preds = %if.g, %0
     24   br label %f
     25 
     26 f:                                                ; preds = %if.e, %while.d
     27   br i1 undef, label %if.e, label %c
     28 
     29 c:                                                ; preds = %f, %0
     30   br i1 undef, label %if.g, label %if.e
     31 
     32 if.g:                                             ; preds = %c
     33   store i32 undef, i32* @a
     34   br label %while.d
     35 
     36 if.e:                                             ; preds = %c, %f
     37   br label %f
     38 }
     39 
     40