Instcombine shouldn't fold these casts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32243 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-12-05 23:43:20 +00:00
parent cd42c58548
commit 9faab9bd93

View File

@ -0,0 +1,13 @@
; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep zext
; Never merge these two conversions, even though it's possible: this is
; significantly more expensive than the two conversions on some targets
; and it causes libgcc to be compile __fixunsdfdi into a recursive
; function.
long %test(double %D) {
%A = fptoui double %D to uint
%B = zext uint %A to long
ret long %B
}