@@ -938,6 +938,24 @@ __m256d test_mm256_cvtps_pd(__m128 A) {
938938 return _mm256_cvtps_pd (A );
939939}
940940
941+ double test_mm256_cvtsd_f64 (__m256d __a ) {
942+ // CHECK-LABEL: test_mm256_cvtsd_f64
943+ // CHECK: extractelement <4 x double> %{{.*}}, i32 0
944+ return _mm256_cvtsd_f64 (__a );
945+ }
946+
947+ int test_mm256_cvtsi256_si32 (__m256i __a ) {
948+ // CHECK-LABEL: test_mm256_cvtsi256_si32
949+ // CHECK: extractelement <8 x i32> %{{.*}}, i32 0
950+ return _mm256_cvtsi256_si32 (__a );
951+ }
952+
953+ float test_mm256_cvtss_f32 (__m256 __a ) {
954+ // CHECK-LABEL: test_mm256_cvtss_f32
955+ // CHECK: extractelement <8 x float> %{{.*}}, i32 0
956+ return _mm256_cvtss_f32 (__a );
957+ }
958+
941959__m128i test_mm256_cvttpd_epi32 (__m256d A ) {
942960 // CHECK-LABEL: test_mm256_cvttpd_epi32
943961 // CHECK: call <4 x i32> @llvm.x86.avx.cvtt.pd2dq.256(<4 x double> %{{.*}})
@@ -2086,24 +2104,3 @@ __m256i test_mm256_zextsi128_si256(__m128i A) {
20862104 // CHECK: shufflevector <2 x i64> %{{.*}}, <2 x i64> %{{.*}}, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
20872105 return _mm256_zextsi128_si256 (A );
20882106}
2089-
2090- double test_mm256_cvtsd_f64 (__m256d __a )
2091- {
2092- // CHECK-LABEL: test_mm256_cvtsd_f64
2093- // CHECK: extractelement <4 x double> %{{.*}}, i32 0
2094- return _mm256_cvtsd_f64 (__a );
2095- }
2096-
2097- int test_mm256_cvtsi256_si32 (__m256i __a )
2098- {
2099- // CHECK-LABEL: test_mm256_cvtsi256_si32
2100- // CHECK: extractelement <8 x i32> %{{.*}}, i32 0
2101- return _mm256_cvtsi256_si32 (__a );
2102- }
2103-
2104- float test_mm256_cvtss_f32 (__m256 __a )
2105- {
2106- // CHECK-LABEL: test_mm256_cvtss_f32
2107- // CHECK: extractelement <8 x float> %{{.*}}, i32 0
2108- return _mm256_cvtss_f32 (__a );
2109- }
0 commit comments