X86: Align the stack on word boundaries in LowerFormalArguments()
[oota-llvm.git] / test / CodeGen / X86 / uint_to_fp-2.ll
1 ; RUN: llc < %s -march=x86 -mattr=+sse2 | FileCheck %s
2
3 ; rdar://6504833
4 define float @test1(i32 %x) nounwind readnone {
5 ; CHECK: test1
6 ; CHECK: movd
7 ; CHECK: orps
8 ; CHECK: subsd
9 ; CHECK: cvtsd2ss
10 ; CHECK: movss
11 ; CHECK: flds
12 ; CHECK: ret
13 entry:
14         %0 = uitofp i32 %x to float
15         ret float %0
16 }
17
18 ; PR10802
19 define float @test2(<4 x i32> %x) nounwind readnone ssp {
20 ; CHECK: test2
21 ; CHECK: xorps [[ZERO:%xmm[0-9]+]]
22 ; CHECK: movss {{.*}}, [[ZERO]]
23 ; CHECK: orps
24 ; CHECK: subsd
25 ; CHECK: cvtsd2ss
26 ; CHECK: movss
27 ; CHECK: flds
28 ; CHECK: ret
29 entry:
30   %vecext = extractelement <4 x i32> %x, i32 0
31   %conv = uitofp i32 %vecext to float
32   ret float %conv
33 }