forked from OSchip/llvm-project
18 lines
406 B
LLVM
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
|
|
}
|