@@ -9136,27 +9136,31 @@ __m512i test_mm512_set4_epi32 (int __A, int __B, int __C, int __D)
9136
9136
// CHECK: insertelement <16 x i32> {{.*}}, i32 15
9137
9137
return _mm512_set4_epi32 (__A ,__B ,__C ,__D );
9138
9138
}
9139
+ TEST_CONSTEXPR (match_v16si (_mm512_set4_epi32 (10 , 20 , 30 , 40 ), 40 , 30 , 20 , 10 , 40 , 30 , 20 , 10 , 40 , 30 , 20 , 10 , 40 , 30 , 20 , 10 ));
9139
9140
9140
9141
__m512i test_mm512_set4_epi64 (long long __A , long long __B , long long __C , long long __D )
9141
9142
{
9142
9143
// CHECK-LABEL: test_mm512_set4_epi64
9143
9144
// CHECK: insertelement <8 x i64> {{.*}}, i32 7
9144
9145
return _mm512_set4_epi64 (__A ,__B ,__C ,__D );
9145
9146
}
9147
+ TEST_CONSTEXPR (match_v8di (_mm512_set4_epi64 (1 , -3 , 5 , -7 ), -7 , 5 , -3 , 1 , -7 , 5 , -3 , 1 ));
9146
9148
9147
9149
__m512d test_mm512_set4_pd (double __A , double __B , double __C , double __D )
9148
9150
{
9149
9151
// CHECK-LABEL: test_mm512_set4_pd
9150
9152
// CHECK: insertelement <8 x double> {{.*}}, i32 7
9151
9153
return _mm512_set4_pd (__A ,__B ,__C ,__D );
9152
9154
}
9155
+ TEST_CONSTEXPR (match_m512d (_mm512_set4_pd (10.0 , 20.0 , 30.0 , 40.0 ), 40.0 , 30.0 , 20.0 , 10.0 , 40.0 , 30.0 , 20.0 , 10.0 ));
9153
9156
9154
9157
__m512 test_mm512_set4_ps (float __A , float __B , float __C , float __D )
9155
9158
{
9156
9159
// CHECK-LABEL: test_mm512_set4_ps
9157
9160
// CHECK: insertelement <16 x float> {{.*}}, i32 15
9158
9161
return _mm512_set4_ps (__A ,__B ,__C ,__D );
9159
9162
}
9163
+ TEST_CONSTEXPR (match_m512 (_mm512_set4_ps (1.1f , 2.2f , 3.3f , 4.4f ), 4.4f , 3.3f , 2.2f , 1.1f , 4.4f , 3.3f , 2.2f , 1.1f , 4.4f , 3.3f , 2.2f , 1.1f , 4.4f , 3.3f , 2.2f , 1.1f ));
9160
9164
9161
9165
__m512i test_mm512_setr4_epi32 (int e0 , int e1 , int e2 , int e3 )
9162
9166
{
@@ -10296,6 +10300,11 @@ __m512i test_mm512_set_epi8(char e63, char e62, char e61, char e60, char e59,
10296
10300
e25 , e24 , e23 , e22 , e21 , e20 , e19 , e18 , e17 , e16 , e15 , e14 , e13 , e12 ,
10297
10301
e11 , e10 , e9 , e8 , e7 , e6 , e5 , e4 , e3 , e2 , e1 , e0 );
10298
10302
}
10303
+ TEST_CONSTEXPR (match_v64qi (_mm512_set_epi8 (63 , 62 , 61 , 60 , 59 , 58 , 57 , 56 , 55 , 54 , 53 , 52 , 51 , 50 , 49 , 48 ,
10304
+ 47 , 46 , 45 , 44 , 43 , 42 , 41 , 40 , 39 , 38 , 37 , 36 , 35 , 34 , 33 , 32 ,
10305
+ 31 , 30 , 29 , 28 , 27 , 26 , 25 , 24 , 23 , 22 , 21 , 20 , 19 , 18 , 17 , 16 ,
10306
+ 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 ), 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 ,
10307
+ 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , 63 ));
10299
10308
10300
10309
__m512i test_mm512_set_epi16 (short e31 , short e30 , short e29 , short e28 ,
10301
10310
short e27 , short e26 , short e25 , short e24 , short e23 , short e22 ,
@@ -10339,8 +10348,9 @@ __m512i test_mm512_set_epi16(short e31, short e30, short e29, short e28,
10339
10348
return _mm512_set_epi16 (e31 , e30 , e29 , e28 , e27 , e26 , e25 , e24 , e23 , e22 ,
10340
10349
e21 , e20 , e19 , e18 , e17 , e16 , e15 , e14 , e13 , e12 , e11 , e10 , e9 , e8 , e7 ,
10341
10350
e6 , e5 , e4 , e3 , e2 , e1 , e0 );
10342
-
10343
10351
}
10352
+ TEST_CONSTEXPR (match_v32hi (_mm512_set_epi16 (-31 , 30 , -29 , 28 , -27 , 26 , -25 , 24 , -23 , 22 , -21 , 20 , -19 , 18 , -17 , 16 , -15 , 14 , -13 , 12 , -11 , 10 , -9 , 8 , -7 , 6 , -5 , 4 , -3 , 2 , -1 , 0 ), 0 , -1 , 2 , -3 , 4 , -5 , 6 , -7 , 8 , -9 , 10 , -11 , 12 , -13 , 14 , -15 , 16 , -17 , 18 , -19 , 20 , -21 , 22 , -23 , 24 , -25 , 26 , -27 , 28 , -29 , 30 , -31 ));
10353
+
10344
10354
__m512i test_mm512_set_epi32 (int __A , int __B , int __C , int __D ,
10345
10355
int __E , int __F , int __G , int __H ,
10346
10356
int __I , int __J , int __K , int __L ,
@@ -10366,6 +10376,7 @@ __m512i test_mm512_set_epi32 (int __A, int __B, int __C, int __D,
10366
10376
return _mm512_set_epi32 ( __A , __B , __C , __D ,__E , __F , __G , __H ,
10367
10377
__I , __J , __K , __L ,__M , __N , __O , __P );
10368
10378
}
10379
+ TEST_CONSTEXPR (match_v16si (_mm512_set_epi32 (-15 , -14 , -13 , -12 , -11 , -10 , -9 , -8 , -7 , -6 , -5 , -4 , -3 , -2 , -1 , 0 ), 0 , -1 , -2 , -3 , -4 , -5 , -6 , -7 , -8 , -9 , -10 , -11 , -12 , -13 , -14 , -15 ));
10369
10380
10370
10381
__m512i test_mm512_setr_epi32 (int __A , int __B , int __C , int __D ,
10371
10382
int __E , int __F , int __G , int __H ,
@@ -10408,6 +10419,7 @@ __m512i test_mm512_setr_epi32 (int __A, int __B, int __C, int __D,
10408
10419
return _mm512_setr_epi32 ( __A , __B , __C , __D ,__E , __F , __G , __H ,
10409
10420
__I , __J , __K , __L ,__M , __N , __O , __P );
10410
10421
}
10422
+ TEST_CONSTEXPR (match_v16si (_mm512_setr_epi32 (0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 ), 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 ));
10411
10423
10412
10424
__m512i test_mm512_mask_set1_epi64 (__m512i __O , __mmask8 __M , long long __A )
10413
10425
{
@@ -10455,6 +10467,7 @@ __m512i test_mm512_set_epi64 (long long __A, long long __B, long long __C,
10455
10467
//CHECK: insertelement{{.*}}i32 7
10456
10468
return _mm512_set_epi64 (__A , __B , __C , __D , __E , __F , __G , __H );
10457
10469
}
10470
+ TEST_CONSTEXPR (match_v8di (_mm512_set_epi64 (-15 , 13 , -11 , 9 , -7 , 5 , -3 , 1 ), 1 , -3 , 5 , -7 , 9 , -11 , 13 , -15 ));
10458
10471
10459
10472
__m512i test_mm512_setr_epi64 (long long __A , long long __B , long long __C ,
10460
10473
long long __D , long long __E , long long __F ,
@@ -10479,6 +10492,7 @@ __m512i test_mm512_setr_epi64 (long long __A, long long __B, long long __C,
10479
10492
//CHECK: insertelement{{.*}}i32 7
10480
10493
return _mm512_setr_epi64 (__A , __B , __C , __D , __E , __F , __G , __H );
10481
10494
}
10495
+ TEST_CONSTEXPR (match_v8di (_mm512_setr_epi64 (-1 , 3 , -5 , 7 , -9 , 11 , -13 , 15 ), -1 , 3 , -5 , 7 , -9 , 11 , -13 , 15 ));
10482
10496
10483
10497
__m512d test_mm512_set_pd (double __A , double __B , double __C , double __D ,
10484
10498
double __E , double __F , double __G , double __H )
@@ -10494,6 +10508,7 @@ __m512d test_mm512_set_pd (double __A, double __B, double __C, double __D,
10494
10508
//CHECK: insertelement{{.*}}i32 7
10495
10509
return _mm512_set_pd ( __A , __B , __C , __D , __E , __F , __G , __H );
10496
10510
}
10511
+ TEST_CONSTEXPR (match_m512d (_mm512_set_pd (20.0 , 40.0 , 60.0 , 80.0 , 100.0 , 120.0 , 140.0 , 160.0 ), 160.0 , 140.0 , 120.0 , 100.0 , 80.0 , 60.0 , 40.0 , 20.0 ));
10497
10512
10498
10513
__m512d test_mm512_setr_pd (double __A , double __B , double __C , double __D ,
10499
10514
double __E , double __F , double __G , double __H )
@@ -10517,6 +10532,7 @@ __m512d test_mm512_setr_pd (double __A, double __B, double __C, double __D,
10517
10532
//CHECK: insertelement{{.*}}i32 7
10518
10533
return _mm512_setr_pd ( __A , __B , __C , __D , __E , __F , __G , __H );
10519
10534
}
10535
+ TEST_CONSTEXPR (match_m512d (_mm512_setr_pd (-20.0 , 40.0 , -60.0 , 80.0 , -100.0 , 120.0 , -140.0 , 160.0 ), -20.0 , 40.0 , -60.0 , 80.0 , -100.0 , 120.0 , -140.0 , 160.0 ));
10520
10536
10521
10537
__m512 test_mm512_set_ps (float __A , float __B , float __C , float __D ,
10522
10538
float __E , float __F , float __G , float __H ,
@@ -10543,6 +10559,7 @@ __m512 test_mm512_set_ps (float __A, float __B, float __C, float __D,
10543
10559
return _mm512_set_ps ( __A , __B , __C , __D , __E , __F , __G , __H ,
10544
10560
__I , __J , __K , __L , __M , __N , __O , __P );
10545
10561
}
10562
+ TEST_CONSTEXPR (match_m512 (_mm512_set_ps (-16.0f , 15.0f , -14.0f , 13.0f , -12.0f , 11.0f , -10.0f , 9.0f , -8.0f , 7.0f , -6.0f , 5.0f , -4.0f , 3.0f , -2.0f , 1.0f ), 1.0f , -2.0f , 3.0f , -4.0f , 5.0f , -6.0f , 7.0f , -8.0f , 9.0f , -10.0f , 11.0f , -12.0f , 13.0f , -14.0f , 15.0f , -16.0f ));
10546
10563
10547
10564
__m512i test_mm512_mask_abs_epi64 (__m512i __W , __mmask8 __U , __m512i __A )
10548
10565
{
@@ -10621,6 +10638,7 @@ __m512 test_mm512_setr_ps (float __A, float __B, float __C, float __D,
10621
10638
return _mm512_setr_ps ( __A , __B , __C , __D , __E , __F , __G , __H ,
10622
10639
__I , __J , __K , __L , __M , __N , __O , __P );
10623
10640
}
10641
+ TEST_CONSTEXPR (match_m512 (_mm512_setr_ps (-1.0f , 2.0f , -3.0f , 4.0f , -5.0f , 6.0f , -7.0f , 8.0f , -9.0f , 10.0f , -11.0f , 12.0f , -13.0f , 14.0f , -15.0f , 16.0f ), -1.0f , 2.0f , -3.0f , 4.0f , -5.0f , 6.0f , -7.0f , 8.0f , -9.0f , 10.0f , -11.0f , 12.0f , -13.0f , 14.0f , -15.0f , 16.0f ));
10624
10642
10625
10643
int test_mm_cvtss_i32 (__m128 A ) {
10626
10644
// CHECK-LABEL: test_mm_cvtss_i32
0 commit comments