Home | History | Annotate | Download | only in Reassociate
      1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
      2 ; RUN: opt -reassociate %s -S | FileCheck %s
      3 
      4 target triple = "x86_64-unknown-linux-gnu"
      5 
      6 define void @f() {
      7 ; CHECK-LABEL: @f(
      8 ; CHECK-NEXT:  entry:
      9 ; CHECK-NEXT:    br label [[DONE:%.*]]
     10 ; CHECK:       dead:
     11 ; CHECK-NEXT:    [[XOR0:%.*]] = xor i16 [[XOR1:%.*]], undef
     12 ; CHECK-NEXT:    [[XOR1]] = xor i16 [[XOR0]], undef
     13 ; CHECK-NEXT:    br i1 undef, label [[DEAD:%.*]], label [[DONE]]
     14 ; CHECK:       done:
     15 ; CHECK-NEXT:    ret void
     16 ;
     17 entry:
     18   br label %done
     19 
     20 dead:
     21   %xor0 = xor i16 %xor1, undef
     22   %xor1 = xor i16 %xor0, undef
     23   br i1 undef, label %dead, label %done
     24 
     25 done:
     26   %e = phi i16 [ %xor1, %dead ], [ 0, %entry ]
     27   ret void
     28 }
     29