@@ -37,6 +37,8 @@ __m128h test_mm_set_sh(_Float16 __h) {
3737 return _mm_set_sh (__h );
3838}
3939
40+ TEST_CONSTEXPR (match_m128h (_mm_set_sh (2.0 ), 2.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 ));
41+
4042__m128h test_mm_set1_ph (_Float16 h ) {
4143 // CHECK-LABEL: test_mm_set1_ph
4244 // CHECK: insertelement <8 x half> {{.*}}, i32 0
@@ -84,6 +86,8 @@ __m128h test_mm_set1_pch(_Float16 _Complex h) {
8486 return _mm_set1_pch (h );
8587}
8688
89+ TEST_CONSTEXPR (match_m128h (_mm_set1_pch (1.0 ), 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 ));
90+
8791__m256h test_mm256_set1_pch (_Float16 _Complex h ) {
8892 // CHECK-LABEL: test_mm256_set1_pch
8993 // CHECK: insertelement <8 x float> {{.*}}, i32 0
@@ -97,6 +101,8 @@ __m256h test_mm256_set1_pch(_Float16 _Complex h) {
97101 return _mm256_set1_pch (h );
98102}
99103
104+ TEST_CONSTEXPR (match_m256h (_mm256_set1_pch (1.0 ), 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 , 1.0 , 0.0 ));
105+
100106__m128h test_mm_set_ph (_Float16 __h1 , _Float16 __h2 , _Float16 __h3 , _Float16 __h4 ,
101107 _Float16 __h5 , _Float16 __h6 , _Float16 __h7 , _Float16 __h8 ) {
102108 // CHECK-LABEL: test_mm_set_ph
@@ -110,6 +116,7 @@ __m128h test_mm_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h
110116 // CHECK: insertelement <8 x half> {{.*}}, i32 7
111117 return _mm_set_ph (__h1 , __h2 , __h3 , __h4 , __h5 , __h6 , __h7 , __h8 );
112118}
119+ TEST_CONSTEXPR (match_m128h (_mm_set_ph (1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 ), 8.0 , 7.0 , 6.0 , 5.0 , 4.0 , 3.0 , 2.0 , 1.0 ));
113120
114121__m256h test_mm256_set_ph (_Float16 __h1 , _Float16 __h2 , _Float16 __h3 , _Float16 __h4 ,
115122 _Float16 __h5 , _Float16 __h6 , _Float16 __h7 , _Float16 __h8 ,
@@ -136,6 +143,8 @@ __m256h test_mm256_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16
136143 __h9 , __h10 , __h11 , __h12 , __h13 , __h14 , __h15 , __h16 );
137144}
138145
146+ TEST_CONSTEXPR (match_m256h (_mm256_set_ph (1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 , 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 ), 8.0 , 7.0 , 6.0 , 5.0 , 4.0 , 3.0 , 2.0 , 1.0 , 8.0 , 7.0 , 6.0 , 5.0 , 4.0 , 3.0 , 2.0 , 1.0 ));
147+
139148__m128h test_mm_setr_ph (_Float16 __h1 , _Float16 __h2 , _Float16 __h3 , _Float16 __h4 ,
140149 _Float16 __h5 , _Float16 __h6 , _Float16 __h7 , _Float16 __h8 ) {
141150 // CHECK-LABEL: test_mm_setr_ph
@@ -150,6 +159,8 @@ __m128h test_mm_setr_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __
150159 return _mm_setr_ph (__h1 , __h2 , __h3 , __h4 , __h5 , __h6 , __h7 , __h8 );
151160}
152161
162+ TEST_CONSTEXPR (match_m128h (_mm_setr_ph (1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 ), 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 ));
163+
153164__m256h test_mm256_setr_ph (_Float16 __h1 , _Float16 __h2 , _Float16 __h3 , _Float16 __h4 ,
154165 _Float16 __h5 , _Float16 __h6 , _Float16 __h7 , _Float16 __h8 ,
155166 _Float16 __h9 , _Float16 __h10 , _Float16 __h11 , _Float16 __h12 ,
@@ -175,6 +186,8 @@ __m256h test_mm256_setr_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16
175186 __h9 , __h10 , __h11 , __h12 , __h13 , __h14 , __h15 , __h16 );
176187}
177188
189+ TEST_CONSTEXPR (match_m256h (_mm256_setr_ph (1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 , 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 ), 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 , 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 , 7.0 , 8.0 ));
190+
178191__m256h test_mm256_add_ph (__m256h __A , __m256h __B ) {
179192 // CHECK-LABEL: test_mm256_add_ph
180193 // CHECK: %{{.*}} = fadd <16 x half> %{{.*}}, %{{.*}}
0 commit comments