@@ -1443,6 +1443,7 @@ __m256i test_mm256_set_epi8(char A0, char A1, char A2, char A3, char A4, char A5
14431443 // CHECK: insertelement <32 x i8> %{{.*}}, i8 %{{.*}}, i32 31
14441444 return _mm256_set_epi8 (A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 );
14451445}
1446+ TEST_CONSTEXPR (match_v32qi (_mm256_set_epi8 (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 ), 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 ));
14461447
14471448__m256i test_mm256_set_epi16 (short A0 , short A1 , short A2 , short A3 , short A4 , short A5 , short A6 , short A7 ,
14481449 short A8 , short A9 , short A10 , short A11 , short A12 , short A13 , short A14 , short A15 ) {
@@ -1465,6 +1466,7 @@ __m256i test_mm256_set_epi16(short A0, short A1, short A2, short A3, short A4, s
14651466 // CHECK: insertelement <16 x i16> %{{.*}}, i16 %{{.*}}, i32 15
14661467 return _mm256_set_epi16 (A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 );
14671468}
1469+ TEST_CONSTEXPR (match_v16hi (_mm256_set_epi16 (0 , -1 , -2 , -3 , -4 , -5 , -6 , -7 , -8 , -9 , -10 , -11 , -12 , -13 , -14 , -15 ), -15 , -14 , -13 , -12 , -11 , -10 , -9 , -8 , -7 , -6 , -5 , -4 , -3 , -2 , -1 , 0 ));
14681470
14691471__m256i test_mm256_set_epi32 (int A0 , int A1 , int A2 , int A3 , int A4 , int A5 , int A6 , int A7 ) {
14701472 // CHECK-LABEL: test_mm256_set_epi32
@@ -1478,6 +1480,7 @@ __m256i test_mm256_set_epi32(int A0, int A1, int A2, int A3, int A4, int A5, int
14781480 // CHECK: insertelement <8 x i32> %{{.*}}, i32 %{{.*}}, i32 7
14791481 return _mm256_set_epi32 (A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 );
14801482}
1483+ TEST_CONSTEXPR (match_v8si (_mm256_set_epi32 (1 , -3 , 5 , -7 , 9 , -11 , 13 , -15 ), -15 , 13 , -11 , 9 , -7 , 5 , -3 , 1 ));
14811484
14821485__m256i test_mm256_set_epi64x (long long A0 , long long A1 , long long A2 , long long A3 ) {
14831486 // CHECK-LABEL: test_mm256_set_epi64x
@@ -1487,6 +1490,7 @@ __m256i test_mm256_set_epi64x(long long A0, long long A1, long long A2, long lon
14871490 // CHECK: insertelement <4 x i64> %{{.*}}, i64 %{{.*}}, i32 3
14881491 return _mm256_set_epi64x (A0 , A1 , A2 , A3 );
14891492}
1493+ TEST_CONSTEXPR (match_v4di (_mm256_set_epi64x (100 , -1000 , 2000 , -200 ), -200 , 2000 , -1000 , 100 ));
14901494
14911495__m256 test_mm256_set_m128 (__m128 A , __m128 B ) {
14921496 // CHECK-LABEL: test_mm256_set_m128
@@ -1566,6 +1570,7 @@ __m256i test_mm256_set1_epi8(char A) {
15661570 // CHECK: insertelement <32 x i8> %{{.*}}, i8 %{{.*}}, i32 31
15671571 return _mm256_set1_epi8 (A );
15681572}
1573+ TEST_CONSTEXPR (match_v32qi (_mm256_set1_epi8 (99 ), 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 , 99 ));
15691574
15701575__m256i test_mm256_set1_epi16 (short A ) {
15711576 // CHECK-LABEL: test_mm256_set1_epi16
@@ -1587,6 +1592,7 @@ __m256i test_mm256_set1_epi16(short A) {
15871592 // CHECK: insertelement <16 x i16> %{{.*}}, i16 %{{.*}}, i32 15
15881593 return _mm256_set1_epi16 (A );
15891594}
1595+ TEST_CONSTEXPR (match_v16hi (_mm256_set1_epi16 (-128 ), -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 , -128 ));
15901596
15911597__m256i test_mm256_set1_epi32 (int A ) {
15921598 // CHECK-LABEL: test_mm256_set1_epi32
@@ -1600,6 +1606,7 @@ __m256i test_mm256_set1_epi32(int A) {
16001606 // CHECK: insertelement <8 x i32> %{{.*}}, i32 %{{.*}}, i32 7
16011607 return _mm256_set1_epi32 (A );
16021608}
1609+ TEST_CONSTEXPR (match_v8si (_mm256_set1_epi32 (55 ), 55 , 55 , 55 , 55 , 55 , 55 , 55 , 55 ));
16031610
16041611__m256i test_mm256_set1_epi64x (long long A ) {
16051612 // CHECK-LABEL: test_mm256_set1_epi64x
@@ -1609,6 +1616,7 @@ __m256i test_mm256_set1_epi64x(long long A) {
16091616 // CHECK: insertelement <4 x i64> %{{.*}}, i64 %{{.*}}, i32 3
16101617 return _mm256_set1_epi64x (A );
16111618}
1619+ TEST_CONSTEXPR (match_v4di (_mm256_set1_epi64x (-65535 ), -65535 , -65535 , -65535 , -65535 ));
16121620
16131621__m256d test_mm256_set1_pd (double A ) {
16141622 // CHECK-LABEL: test_mm256_set1_pd
@@ -1673,6 +1681,7 @@ __m256i test_mm256_setr_epi8(char A0, char A1, char A2, char A3, char A4, char A
16731681 // CHECK: insertelement <32 x i8> %{{.*}}, i8 %{{.*}}, i32 31
16741682 return _mm256_setr_epi8 (A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 , A29 , A30 , A31 );
16751683}
1684+ TEST_CONSTEXPR (match_v32qi (_mm256_setr_epi8 (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 ), 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 ));
16761685
16771686__m256i test_mm256_setr_epi16 (short A0 , short A1 , short A2 , short A3 , short A4 , short A5 , short A6 , short A7 ,
16781687 short A8 , short A9 , short A10 , short A11 , short A12 , short A13 , short A14 , short A15 ) {
@@ -1695,6 +1704,7 @@ __m256i test_mm256_setr_epi16(short A0, short A1, short A2, short A3, short A4,
16951704 // CHECK: insertelement <16 x i16> %{{.*}}, i16 %{{.*}}, i32 15
16961705 return _mm256_setr_epi16 (A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 );
16971706}
1707+ TEST_CONSTEXPR (match_v16hi (_mm256_setr_epi16 (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 ));
16981708
16991709__m256i test_mm256_setr_epi32 (int A0 , int A1 , int A2 , int A3 , int A4 , int A5 , int A6 , int A7 ) {
17001710 // CHECK-LABEL: test_mm256_setr_epi32
@@ -1708,6 +1718,7 @@ __m256i test_mm256_setr_epi32(int A0, int A1, int A2, int A3, int A4, int A5, in
17081718 // CHECK: insertelement <8 x i32> %{{.*}}, i32 %{{.*}}, i32 7
17091719 return _mm256_setr_epi32 (A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 );
17101720}
1721+ TEST_CONSTEXPR (match_v8si (_mm256_setr_epi32 (1 , -3 , 5 , -7 , 9 , -11 , 13 , -15 ), 1 , -3 , 5 , -7 , 9 , -11 , 13 , -15 ));
17111722
17121723__m256i test_mm256_setr_epi64x (long long A0 , long long A1 , long long A2 , long long A3 ) {
17131724 // CHECK-LABEL: test_mm256_setr_epi64x
@@ -1717,6 +1728,7 @@ __m256i test_mm256_setr_epi64x(long long A0, long long A1, long long A2, long lo
17171728 // CHECK: insertelement <4 x i64> %{{.*}}, i64 %{{.*}}, i32 3
17181729 return _mm256_setr_epi64x (A0 , A1 , A2 , A3 );
17191730}
1731+ TEST_CONSTEXPR (match_v4di (_mm256_setr_epi64x (100 , -1000 , 2000 , -200 ), 100 , -1000 , 2000 , -200 ));
17201732
17211733__m256 test_mm256_setr_m128 (__m128 A , __m128 B ) {
17221734 // CHECK-LABEL: test_mm256_setr_m128
0 commit comments