|
| 1 | +use super::types::*; |
1 | 2 | use super::upstream;
|
2 | 3 | use crate::abstractions::bitvec::BitVec;
|
3 | 4 | use crate::helpers::test::HasRandom;
|
4 |
| -use super::types::*; |
5 | 5 |
|
6 | 6 | /// Derives tests for a given intrinsics. Test that a given intrinsics and its model compute the same thing over random values (1000 by default).
|
7 | 7 | macro_rules! mk {
|
@@ -81,7 +81,6 @@ mk!(_mm256_cvtepu8_epi64(a: BitVec));
|
81 | 81 | mk!(_mm256_extracti128_si256{<0>,<1>}(a: BitVec));
|
82 | 82 | mk!(_mm256_hadd_epi16(a: BitVec, b: BitVec));
|
83 | 83 | mk!(_mm256_hadd_epi32(a: BitVec, b: BitVec));
|
84 |
| -mk!(_mm256_hadds_epi16(a: BitVec, b: BitVec)); |
85 | 84 | mk!(_mm256_hsub_epi16(a: BitVec, b: BitVec));
|
86 | 85 | mk!(_mm256_hsub_epi32(a: BitVec, b: BitVec));
|
87 | 86 | mk!(_mm256_hsubs_epi16(a: BitVec, b: BitVec));
|
@@ -183,6 +182,7 @@ mk!(_mm256_unpacklo_epi32(a: BitVec, b: BitVec));
|
183 | 182 | mk!(_mm256_unpackhi_epi64(a: BitVec, b: BitVec));
|
184 | 183 | mk!(_mm256_unpacklo_epi64(a: BitVec, b: BitVec));
|
185 | 184 | mk!(_mm256_xor_si256(a: BitVec, b: BitVec));
|
| 185 | + |
186 | 186 | #[test]
|
187 | 187 | fn _mm256_extract_epi8() {
|
188 | 188 | let n = 100;
|
@@ -531,127 +531,11 @@ fn _mm256_extract_epi16() {
|
531 | 531 | }
|
532 | 532 | }
|
533 | 533 |
|
534 |
| -mk!(_mm256_abs_epi32(a: __m256i)); |
535 |
| -mk!(_mm256_abs_epi16(a: __m256i)); |
536 |
| -mk!(_mm256_abs_epi8(a: __m256i)); |
537 |
| -mk!(_mm256_add_epi64(a: __m256i, b: __m256i)); |
538 |
| -mk!(_mm256_add_epi32(a: __m256i, b: __m256i)); |
539 |
| -mk!(_mm256_add_epi16(a: __m256i, b: __m256i)); |
540 |
| -mk!(_mm256_add_epi8(a: __m256i, b: __m256i)); |
541 |
| -mk!(_mm256_adds_epi8(a: __m256i, b: __m256i)); |
542 |
| -mk!(_mm256_adds_epi16(a: __m256i, b: __m256i)); |
543 |
| -mk!(_mm256_adds_epu8(a: __m256i, b: __m256i)); |
544 |
| -mk!(_mm256_adds_epu16(a: __m256i, b: __m256i)); |
545 | 534 | mk!(_mm256_and_si256(a: __m256i, b: __m256i));
|
546 | 535 | mk!(_mm256_andnot_si256(a: __m256i, b: __m256i));
|
547 | 536 | mk!(_mm256_avg_epu16(a: __m256i, b: __m256i));
|
548 | 537 | mk!(_mm256_avg_epu8(a: __m256i, b: __m256i));
|
549 |
| -mk!(_mm256_blendv_epi8(a: __m256i, b: __m256i, mask: __m256i)); |
550 |
| -mk!(_mm_broadcastb_epi8(a: __m128i)); |
551 |
| -mk!(_mm256_broadcastb_epi8(a: __m128i)); |
552 |
| -mk!(_mm_broadcastd_epi32(a: __m128i)); |
553 |
| -mk!(_mm256_broadcastd_epi32(a: __m128i)); |
554 |
| -mk!(_mm_broadcastq_epi64(a: __m128i)); |
555 |
| -mk!(_mm256_broadcastq_epi64(a: __m128i)); |
556 | 538 | mk!(_mm_broadcastsd_pd(a: __m128d));
|
557 | 539 | mk!(_mm256_broadcastsd_pd(a: __m128d));
|
558 |
| -mk!(_mm_broadcastsi128_si256(a: __m128i)); |
559 |
| -mk!(_mm256_broadcastsi128_si256(a: __m128i)); |
560 | 540 | mk!(_mm_broadcastss_ps(a: __m128));
|
561 | 541 | mk!(_mm256_broadcastss_ps(a: __m128));
|
562 |
| -mk!(_mm_broadcastw_epi16(a: __m128i)); |
563 |
| -mk!(_mm256_broadcastw_epi16(a: __m128i)); |
564 |
| -mk!(_mm256_cmpeq_epi64(a: __m256i, b: __m256i)); |
565 |
| -mk!(_mm256_cmpeq_epi32(a: __m256i, b: __m256i)); |
566 |
| -mk!(_mm256_cmpeq_epi16(a: __m256i, b: __m256i)); |
567 |
| -mk!(_mm256_cmpeq_epi8(a: __m256i, b: __m256i)); |
568 |
| -mk!(_mm256_cmpgt_epi64(a: __m256i, b: __m256i)); |
569 |
| -mk!(_mm256_cmpgt_epi32(a: __m256i, b: __m256i)); |
570 |
| -mk!(_mm256_cmpgt_epi16(a: __m256i, b: __m256i)); |
571 |
| -mk!(_mm256_cmpgt_epi8(a: __m256i, b: __m256i)); |
572 |
| -mk!(_mm256_cvtepi16_epi32(a: __m128i)); |
573 |
| -mk!(_mm256_cvtepi16_epi64(a: __m128i)); |
574 |
| -mk!(_mm256_cvtepi32_epi64(a: __m128i)); |
575 |
| -mk!(_mm256_cvtepi8_epi16(a: __m128i)); |
576 |
| -mk!(_mm256_cvtepi8_epi32(a: __m128i)); |
577 |
| -mk!(_mm256_cvtepi8_epi64(a: __m128i)); |
578 |
| -mk!(_mm256_cvtepu16_epi32(a: __m128i)); |
579 |
| -mk!(_mm256_cvtepu16_epi64(a: __m128i)); |
580 |
| -mk!(_mm256_cvtepu32_epi64(a: __m128i)); |
581 |
| -mk!(_mm256_cvtepu8_epi16(a: __m128i)); |
582 |
| -mk!(_mm256_cvtepu8_epi32(a: __m128i)); |
583 |
| -mk!(_mm256_cvtepu8_epi64(a: __m128i)); |
584 |
| -mk!(_mm256_hadd_epi16(a: __m256i, b: __m256i)); |
585 |
| -mk!(_mm256_hadd_epi32(a: __m256i, b: __m256i)); |
586 |
| -mk!(_mm256_hadds_epi16(a: __m256i, b: __m256i)); |
587 |
| -mk!(_mm256_hsub_epi16(a: __m256i, b: __m256i)); |
588 |
| -mk!(_mm256_hsub_epi32(a: __m256i, b: __m256i)); |
589 |
| -mk!(_mm256_hsubs_epi16(a: __m256i, b: __m256i)); |
590 |
| -mk!(_mm256_madd_epi16(a: __m256i, b: __m256i)); |
591 |
| -mk!(_mm256_maddubs_epi16(a: __m256i, b: __m256i)); |
592 |
| -mk!(_mm256_max_epi16(a: __m256i, b: __m256i)); |
593 |
| -mk!(_mm256_max_epi32(a: __m256i, b: __m256i)); |
594 |
| -mk!(_mm256_max_epi8(a: __m256i, b: __m256i)); |
595 |
| -mk!(_mm256_max_epu16(a: __m256i, b: __m256i)); |
596 |
| -mk!(_mm256_max_epu32(a: __m256i, b: __m256i)); |
597 |
| -mk!(_mm256_max_epu8(a: __m256i, b: __m256i)); |
598 |
| -mk!(_mm256_min_epi16(a: __m256i, b: __m256i)); |
599 |
| -mk!(_mm256_min_epi32(a: __m256i, b: __m256i)); |
600 |
| -mk!(_mm256_min_epi8(a: __m256i, b: __m256i)); |
601 |
| -mk!(_mm256_min_epu16(a: __m256i, b: __m256i)); |
602 |
| -mk!(_mm256_min_epu32(a: __m256i, b: __m256i)); |
603 |
| -mk!(_mm256_min_epu8(a: __m256i, b: __m256i)); |
604 |
| -mk!(_mm256_movemask_epi8(a: __m256i)); |
605 |
| -mk!(_mm256_mul_epi32(a: __m256i, b: __m256i)); |
606 |
| -mk!(_mm256_mul_epu32(a: __m256i, b: __m256i)); |
607 |
| -mk!(_mm256_mulhi_epi16(a: __m256i, b: __m256i)); |
608 |
| -mk!(_mm256_mulhi_epu16(a: __m256i, b: __m256i)); |
609 |
| -mk!(_mm256_mullo_epi16(a: __m256i, b: __m256i)); |
610 |
| -mk!(_mm256_mullo_epi32(a: __m256i, b: __m256i)); |
611 |
| -mk!(_mm256_mulhrs_epi16(a: __m256i, b: __m256i)); |
612 |
| -mk!(_mm256_or_si256(a: __m256i, b: __m256i)); |
613 |
| -mk!(_mm256_packs_epi16(a: __m256i, b: __m256i)); |
614 |
| -mk!(_mm256_packs_epi32(a: __m256i, b: __m256i)); |
615 |
| -mk!(_mm256_packus_epi16(a: __m256i, b: __m256i)); |
616 |
| -mk!(_mm256_packus_epi32(a: __m256i, b: __m256i)); |
617 |
| -mk!(_mm256_permutevar8x32_epi32(a: __m256i, b: __m256i)); |
618 |
| -mk!(_mm256_sad_epu8(a: __m256i, b: __m256i)); |
619 |
| -mk!(_mm256_shuffle_epi8(a: __m256i, b: __m256i)); |
620 |
| -mk!(_mm256_sign_epi16(a: __m256i, b: __m256i)); |
621 |
| -mk!(_mm256_sign_epi32(a: __m256i, b: __m256i)); |
622 |
| -mk!(_mm256_sign_epi8(a: __m256i, b: __m256i)); |
623 |
| -mk!(_mm256_sll_epi16(a: __m256i, count: __m128i)); |
624 |
| -mk!(_mm256_sll_epi32(a: __m256i, count: __m128i)); |
625 |
| -mk!(_mm256_sll_epi64(a: __m256i, count: __m128i)); |
626 |
| -mk!(_mm_sllv_epi32(a: __m128i, count: __m128i)); |
627 |
| -mk!(_mm256_sllv_epi32(a: __m256i, count: __m256i)); |
628 |
| -mk!(_mm_sllv_epi64(a: __m128i, count: __m128i)); |
629 |
| -mk!(_mm256_sllv_epi64(a: __m256i, count: __m256i)); |
630 |
| -mk!(_mm256_sra_epi16(a: __m256i, count: __m128i)); |
631 |
| -mk!(_mm256_sra_epi32(a: __m256i, count: __m128i)); |
632 |
| -mk!(_mm_srav_epi32(a: __m128i, count: __m128i)); |
633 |
| -mk!(_mm256_srav_epi32(a: __m256i, count: __m256i)); |
634 |
| -mk!(_mm256_srl_epi16(a: __m256i, count: __m128i)); |
635 |
| -mk!(_mm256_srl_epi32(a: __m256i, count: __m128i)); |
636 |
| -mk!(_mm256_srl_epi64(a: __m256i, count: __m128i)); |
637 |
| -mk!(_mm_srlv_epi32(a: __m128i, count: __m128i)); |
638 |
| -mk!(_mm256_srlv_epi32(a: __m256i, count: __m256i)); |
639 |
| -mk!(_mm_srlv_epi64(a: __m128i, count: __m128i)); |
640 |
| -mk!(_mm256_srlv_epi64(a: __m256i, count: __m256i)); |
641 |
| -mk!(_mm256_sub_epi16(a: __m256i, b: __m256i)); |
642 |
| -mk!(_mm256_sub_epi32(a: __m256i, b: __m256i)); |
643 |
| -mk!(_mm256_sub_epi64(a: __m256i, b: __m256i)); |
644 |
| -mk!(_mm256_sub_epi8(a: __m256i, b: __m256i)); |
645 |
| -mk!(_mm256_subs_epi16(a: __m256i, b: __m256i)); |
646 |
| -mk!(_mm256_subs_epi8(a: __m256i, b: __m256i)); |
647 |
| -mk!(_mm256_subs_epu16(a: __m256i, b: __m256i)); |
648 |
| -mk!(_mm256_subs_epu8(a: __m256i, b: __m256i)); |
649 |
| -mk!(_mm256_unpackhi_epi8(a: __m256i, b: __m256i)); |
650 |
| -mk!(_mm256_unpacklo_epi8(a: __m256i, b: __m256i)); |
651 |
| -mk!(_mm256_unpackhi_epi16(a: __m256i, b: __m256i)); |
652 |
| -mk!(_mm256_unpacklo_epi16(a: __m256i, b: __m256i)); |
653 |
| -mk!(_mm256_unpackhi_epi32(a: __m256i, b: __m256i)); |
654 |
| -mk!(_mm256_unpacklo_epi32(a: __m256i, b: __m256i)); |
655 |
| -mk!(_mm256_unpackhi_epi64(a: __m256i, b: __m256i)); |
656 |
| -mk!(_mm256_unpacklo_epi64(a: __m256i, b: __m256i)); |
657 |
| -mk!(_mm256_xor_si256(a: __m256i, b: __m256i)); |
0 commit comments