llvm/llvm/test/Transforms/SCCP/2004-12-10-UndefBranchBug.ll

; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -passes=sccp -S | FileCheck %s

; Branch on undef is UB, so the T block is never executed, and we can return
; undef (IPSCCP would replace the block with unreachable).

define i32 @foo() {
; CHECK-LABEL: @foo(
; CHECK-NEXT:    unreachable
;
  br i1 undef, label %T, label %T
T:
  %X = add i32 0, 1
  ret i32 %X
}