1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
; RUN: llvm-upgrade < %s | llvm-as | opt -simplifycfg | llvm-dis | \
; RUN: not grep select
;; The PHI node in this example should not be turned into a select, as we are
;; not able to ifcvt the entire block. As such, converting to a select just
;; introduces inefficiency without saving copies.
int %bar(bool %C) {
entry:
br bool %C, label %then, label %endif
then:
%tmp.3 = call int %qux()
br label %endif
endif:
%R = phi int [123, %entry], [12312, %then]
;; stuff to disable tail duplication
call int %qux()
call int %qux()
call int %qux()
call int %qux()
call int %qux()
call int %qux()
call int %qux()
ret int %R
}
declare int %qux()
|