Home | History | Annotate | Download | only in NewGVN
      1 ; Make sure GVN doesn't incorrectly think the branch terminating
      2 ; bb2 has a constant condition.
      3 ; RUN: opt -S -newgvn %s | FileCheck %s
      4 
      5 @a = common global i32 0
      6 @patatino = private unnamed_addr constant [3 x i8] c"0\0A\00"
      7 
      8 define void @tinkywinky() {
      9 bb:
     10   %tmp = load i32, i32* @a
     11   %tmp1 = icmp sge i32 %tmp, 0
     12   br i1 %tmp1, label %bb2, label %bb7
     13 bb2:
     14   %tmp4 = icmp sgt i32 %tmp, 0
     15 ; CHECK: br i1 %tmp4, label %bb5, label %bb7
     16   br i1 %tmp4, label %bb5, label %bb7
     17 bb5:
     18   %tmp6 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @patatino, i32 0, i32 0))
     19   br label %bb7
     20 bb7:
     21   ret void
     22 }
     23 
     24 declare i32 @printf(i8*, ...)
     25