llvm/test/Transforms/DCE/guards.ll
Sanjoy Das 3aa5468391 Mark guards on true as "trivially dead"
This moves some logic added to EarlyCSE in rL268120 into
`llvm::isInstructionTriviallyDead`.  Adds a test case for DCE to
demonstrate that passes other than EarlyCSE can now pick up on the new
information.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@268126 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-29 22:23:16 +00:00

12 lines
273 B
LLVM

; RUN: opt -dce -S < %s | FileCheck %s
declare void @llvm.experimental.guard(i1,...)
define void @f(i32 %val) {
; CHECK-LABEL: @f(
; CHECK-NEXT: ret void
%val2 = add i32 %val, 1
call void(i1, ...) @llvm.experimental.guard(i1 true) [ "deopt"(i32 %val2) ]
ret void
}