; 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 | |
} | |