llvm/test/CodeGen/Hexagon/constp-rewrite-branches.ll
Krzysztof Parzyszek 5559171657 [Hexagon] Implement MI-level constant propagation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277028 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-28 20:01:59 +00:00

18 lines
406 B
LLVM

; RUN: llc -O2 -march hexagon < %s | FileCheck %s
define i32 @foo(i32 %x) {
%p = icmp eq i32 %x, 0
br i1 %p, label %zero, label %nonzero
nonzero:
%v1 = add i32 %x, 1
%c = icmp eq i32 %x, %v1
; This branch will be rewritten by HCP. A bug would cause both branches to
; go away, leaving no path to "ret -1".
br i1 %c, label %zero, label %other
zero:
ret i32 0
other:
; CHECK: -1
ret i32 -1
}