; XFAIL: *
; RUN: opt < %s -newgvn -S | FileCheck %s

define i32 @main() {
block1:
	%z1 = bitcast i32 0 to i32
	br label %block2
block2:
  %z2 = bitcast i32 0 to i32
  ret i32 %z2
}

; CHECK: define i32 @main() {
; CHECK-NEXT: block1:
; CHECK-NEXT:   ret i32 0
; CHECK-NEXT: }

; RUN: opt < %s -newgvn -S | FileCheck %s

define i32 @main() {
block1:
	%z1 = bitcast i32 0 to i32
	br label %block2
block2:
  %z2 = bitcast i32 0 to i32
  ret i32 %z2
}

; CHECK: define i32 @main() {
; CHECK-NEXT: block1:
; CHECK-NEXT:   br label %block2
; CHECK: block2:
; CHECK-NEXT:   ret i32 0
; CHECK-NEXT: }

Change test to reflect difference between GVN and NewGVN.
[NewGVN] Change test to reflect difference between GVN and NewGVN.

The current GVN algorithm folds unconditional branches to, it claims,
expose more PRE oportunities. The folding, if really needed,
(which is not sure, as it's not really proved it improves analysis)
can be done by an earlier cleanup pass instead of GVN itself.
Ack'ed/SGTM'd by Daniel Berlin.

Differential Revision:  https://reviews.llvm.org/D28117

git-svn-id: 0ff597fd157e6f4fc38580e8d64ab130330d2411@290546 91177308-0d34-0410-b5e6-96231b3b80d8
