1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/Transforms/InstCombine/2003-08-12-AllocaNonNull.ll
Roman Lebedev eda37b998a [SimplifyCFG] MergeBlockIntoPredecessor() already knows how to preserve DomTree
... so just ensure that we pass DomTreeUpdater it into it.

Fixes DomTree preservation for a large number of tests,
all of which are marked as such so that they do not regress.
2020-12-17 01:03:49 +03:00

22 lines
699 B
LLVM

; This testcase can be simplified by "realizing" that alloca can never return
; null.
; RUN: opt < %s -instcombine -simplifycfg -simplifycfg-require-and-preserve-domtree=1 -S | FileCheck %s
; CHECK-NOT: br
declare i32 @bitmap_clear(...)
define i32 @oof() {
entry:
%live_head = alloca i32 ; <i32*> [#uses=2]
%tmp.1 = icmp ne i32* %live_head, null ; <i1> [#uses=1]
br i1 %tmp.1, label %then, label %UnifiedExitNode
then: ; preds = %entry
%tmp.4 = call i32 (...) @bitmap_clear( i32* %live_head ) ; <i32> [#uses=0]
br label %UnifiedExitNode
UnifiedExitNode: ; preds = %then, %entry
ret i32 0
}