Drop function that are deprecated since 2010.
[oota-llvm.git] / test / CodeGen / X86 / vec_uint_to_fp.ll
index 607be9a8549463dbf96e5f1b44270eb8f1deb452..ce0c11b2fa2a290fe6ea760780974dbc8692a7c9 100644 (file)
 ; CST-NEXT: .long      1392508928              ## 0x53000000
 
 ; CST: [[MAGICCSTADDR:LCPI0_[0-9]+]]:
-; CST-NEXT: .long      3539992704              ## float -5.497642e+11
-; CST-NEXT: .long      3539992704              ## float -5.497642e+11
-; CST-NEXT: .long      3539992704              ## float -5.497642e+11
-; CST-NEXT: .long      3539992704              ## float -5.497642e+11
+; CST-NEXT: .long      3539992704              ## float -5.49764202E+11
+; CST-NEXT: .long      3539992704              ## float -5.49764202E+11
+; CST-NEXT: .long      3539992704              ## float -5.49764202E+11
+; CST-NEXT: .long      3539992704              ## float -5.49764202E+11
 
 ; AVX2: [[LOWCSTADDR:LCPI0_[0-9]+]]:
 ; AVX2-NEXT: .long     1258291200              ## 0x4b000000
@@ -154,3 +154,14 @@ define <8 x float> @test2(<8 x i32> %A) nounwind {
   %C = uitofp <8 x i32> %A to <8 x float>
   ret <8 x float> %C
 }
+
+define <4 x double> @test3(<4 x i32> %arg) {
+; CHECK-LABEL: test3:
+; This test used to crash because we were custom lowering it as if it was
+; a conversion between <4 x i32> and <4 x float>.
+; AVX: vcvtdq2pd
+; AVX2: vcvtdq2pd
+; CHECK: retq
+  %tmp = uitofp <4 x i32> %arg to <4 x double>
+  ret <4 x double> %tmp
+}