forked from OSchip/llvm-project
20 lines
539 B
LLVM
20 lines
539 B
LLVM
; This function contains intervening instructions which should be moved out of the way
|
|
; RUN: llvm-upgrade < %s | llvm-as | opt -tailcallelim | llvm-dis | not grep call
|
|
|
|
int %Test(int %X) {
|
|
entry:
|
|
%tmp.1 = seteq int %X, 0
|
|
br bool %tmp.1, label %then.0, label %endif.0
|
|
|
|
then.0:
|
|
%tmp.4 = add int %X, 1
|
|
ret int %tmp.4
|
|
|
|
endif.0:
|
|
%tmp.10 = add int %X, -1
|
|
%tmp.8 = call int %Test(int %tmp.10)
|
|
%DUMMY = add int %X, 1 ;; This should not prevent elimination
|
|
ret int %tmp.8
|
|
}
|
|
|