Skip to content

Commit 9aecd92

Browse files
committed
Add const tests for fma
1 parent 3ac22a3 commit 9aecd92

File tree

1 file changed

+33
-32
lines changed
  • crates/core_arch/src/x86

1 file changed

+33
-32
lines changed

crates/core_arch/src/x86/fma.rs

Lines changed: 33 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -553,13 +553,14 @@ pub const fn _mm_fnmsub_ss(a: __m128, b: __m128, c: __m128) -> __m128 {
553553

554554
#[cfg(test)]
555555
mod tests {
556+
use crate::core_arch::assert_eq_const as assert_eq;
556557

557558
use stdarch_test::simd_test;
558559

559560
use crate::core_arch::x86::*;
560561

561562
#[simd_test(enable = "fma")]
562-
unsafe fn test_mm_fmadd_pd() {
563+
const unsafe fn test_mm_fmadd_pd() {
563564
let a = _mm_setr_pd(1., 2.);
564565
let b = _mm_setr_pd(5., 3.);
565566
let c = _mm_setr_pd(4., 9.);
@@ -568,7 +569,7 @@ mod tests {
568569
}
569570

570571
#[simd_test(enable = "fma")]
571-
unsafe fn test_mm256_fmadd_pd() {
572+
const unsafe fn test_mm256_fmadd_pd() {
572573
let a = _mm256_setr_pd(1., 2., 3., 4.);
573574
let b = _mm256_setr_pd(5., 3., 7., 2.);
574575
let c = _mm256_setr_pd(4., 9., 1., 7.);
@@ -577,7 +578,7 @@ mod tests {
577578
}
578579

579580
#[simd_test(enable = "fma")]
580-
unsafe fn test_mm_fmadd_ps() {
581+
const unsafe fn test_mm_fmadd_ps() {
581582
let a = _mm_setr_ps(1., 2., 3., 4.);
582583
let b = _mm_setr_ps(5., 3., 7., 2.);
583584
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -586,7 +587,7 @@ mod tests {
586587
}
587588

588589
#[simd_test(enable = "fma")]
589-
unsafe fn test_mm256_fmadd_ps() {
590+
const unsafe fn test_mm256_fmadd_ps() {
590591
let a = _mm256_setr_ps(1., 2., 3., 4., 0., 10., -1., -2.);
591592
let b = _mm256_setr_ps(5., 3., 7., 2., 4., -6., 0., 14.);
592593
let c = _mm256_setr_ps(4., 9., 1., 7., -5., 11., -2., -3.);
@@ -595,7 +596,7 @@ mod tests {
595596
}
596597

597598
#[simd_test(enable = "fma")]
598-
unsafe fn test_mm_fmadd_sd() {
599+
const unsafe fn test_mm_fmadd_sd() {
599600
let a = _mm_setr_pd(1., 2.);
600601
let b = _mm_setr_pd(5., 3.);
601602
let c = _mm_setr_pd(4., 9.);
@@ -604,7 +605,7 @@ mod tests {
604605
}
605606

606607
#[simd_test(enable = "fma")]
607-
unsafe fn test_mm_fmadd_ss() {
608+
const unsafe fn test_mm_fmadd_ss() {
608609
let a = _mm_setr_ps(1., 2., 3., 4.);
609610
let b = _mm_setr_ps(5., 3., 7., 2.);
610611
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -613,7 +614,7 @@ mod tests {
613614
}
614615

615616
#[simd_test(enable = "fma")]
616-
unsafe fn test_mm_fmaddsub_pd() {
617+
const unsafe fn test_mm_fmaddsub_pd() {
617618
let a = _mm_setr_pd(1., 2.);
618619
let b = _mm_setr_pd(5., 3.);
619620
let c = _mm_setr_pd(4., 9.);
@@ -622,7 +623,7 @@ mod tests {
622623
}
623624

624625
#[simd_test(enable = "fma")]
625-
unsafe fn test_mm256_fmaddsub_pd() {
626+
const unsafe fn test_mm256_fmaddsub_pd() {
626627
let a = _mm256_setr_pd(1., 2., 3., 4.);
627628
let b = _mm256_setr_pd(5., 3., 7., 2.);
628629
let c = _mm256_setr_pd(4., 9., 1., 7.);
@@ -631,7 +632,7 @@ mod tests {
631632
}
632633

633634
#[simd_test(enable = "fma")]
634-
unsafe fn test_mm_fmaddsub_ps() {
635+
const unsafe fn test_mm_fmaddsub_ps() {
635636
let a = _mm_setr_ps(1., 2., 3., 4.);
636637
let b = _mm_setr_ps(5., 3., 7., 2.);
637638
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -640,7 +641,7 @@ mod tests {
640641
}
641642

642643
#[simd_test(enable = "fma")]
643-
unsafe fn test_mm256_fmaddsub_ps() {
644+
const unsafe fn test_mm256_fmaddsub_ps() {
644645
let a = _mm256_setr_ps(1., 2., 3., 4., 0., 10., -1., -2.);
645646
let b = _mm256_setr_ps(5., 3., 7., 2., 4., -6., 0., 14.);
646647
let c = _mm256_setr_ps(4., 9., 1., 7., -5., 11., -2., -3.);
@@ -649,7 +650,7 @@ mod tests {
649650
}
650651

651652
#[simd_test(enable = "fma")]
652-
unsafe fn test_mm_fmsub_pd() {
653+
const unsafe fn test_mm_fmsub_pd() {
653654
let a = _mm_setr_pd(1., 2.);
654655
let b = _mm_setr_pd(5., 3.);
655656
let c = _mm_setr_pd(4., 9.);
@@ -658,7 +659,7 @@ mod tests {
658659
}
659660

660661
#[simd_test(enable = "fma")]
661-
unsafe fn test_mm256_fmsub_pd() {
662+
const unsafe fn test_mm256_fmsub_pd() {
662663
let a = _mm256_setr_pd(1., 2., 3., 4.);
663664
let b = _mm256_setr_pd(5., 3., 7., 2.);
664665
let c = _mm256_setr_pd(4., 9., 1., 7.);
@@ -667,7 +668,7 @@ mod tests {
667668
}
668669

669670
#[simd_test(enable = "fma")]
670-
unsafe fn test_mm_fmsub_ps() {
671+
const unsafe fn test_mm_fmsub_ps() {
671672
let a = _mm_setr_ps(1., 2., 3., 4.);
672673
let b = _mm_setr_ps(5., 3., 7., 2.);
673674
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -676,7 +677,7 @@ mod tests {
676677
}
677678

678679
#[simd_test(enable = "fma")]
679-
unsafe fn test_mm256_fmsub_ps() {
680+
const unsafe fn test_mm256_fmsub_ps() {
680681
let a = _mm256_setr_ps(1., 2., 3., 4., 0., 10., -1., -2.);
681682
let b = _mm256_setr_ps(5., 3., 7., 2., 4., -6., 0., 14.);
682683
let c = _mm256_setr_ps(4., 9., 1., 7., -5., 11., -2., -3.);
@@ -685,7 +686,7 @@ mod tests {
685686
}
686687

687688
#[simd_test(enable = "fma")]
688-
unsafe fn test_mm_fmsub_sd() {
689+
const unsafe fn test_mm_fmsub_sd() {
689690
let a = _mm_setr_pd(1., 2.);
690691
let b = _mm_setr_pd(5., 3.);
691692
let c = _mm_setr_pd(4., 9.);
@@ -694,7 +695,7 @@ mod tests {
694695
}
695696

696697
#[simd_test(enable = "fma")]
697-
unsafe fn test_mm_fmsub_ss() {
698+
const unsafe fn test_mm_fmsub_ss() {
698699
let a = _mm_setr_ps(1., 2., 3., 4.);
699700
let b = _mm_setr_ps(5., 3., 7., 2.);
700701
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -703,7 +704,7 @@ mod tests {
703704
}
704705

705706
#[simd_test(enable = "fma")]
706-
unsafe fn test_mm_fmsubadd_pd() {
707+
const unsafe fn test_mm_fmsubadd_pd() {
707708
let a = _mm_setr_pd(1., 2.);
708709
let b = _mm_setr_pd(5., 3.);
709710
let c = _mm_setr_pd(4., 9.);
@@ -712,7 +713,7 @@ mod tests {
712713
}
713714

714715
#[simd_test(enable = "fma")]
715-
unsafe fn test_mm256_fmsubadd_pd() {
716+
const unsafe fn test_mm256_fmsubadd_pd() {
716717
let a = _mm256_setr_pd(1., 2., 3., 4.);
717718
let b = _mm256_setr_pd(5., 3., 7., 2.);
718719
let c = _mm256_setr_pd(4., 9., 1., 7.);
@@ -721,7 +722,7 @@ mod tests {
721722
}
722723

723724
#[simd_test(enable = "fma")]
724-
unsafe fn test_mm_fmsubadd_ps() {
725+
const unsafe fn test_mm_fmsubadd_ps() {
725726
let a = _mm_setr_ps(1., 2., 3., 4.);
726727
let b = _mm_setr_ps(5., 3., 7., 2.);
727728
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -730,7 +731,7 @@ mod tests {
730731
}
731732

732733
#[simd_test(enable = "fma")]
733-
unsafe fn test_mm256_fmsubadd_ps() {
734+
const unsafe fn test_mm256_fmsubadd_ps() {
734735
let a = _mm256_setr_ps(1., 2., 3., 4., 0., 10., -1., -2.);
735736
let b = _mm256_setr_ps(5., 3., 7., 2., 4., -6., 0., 14.);
736737
let c = _mm256_setr_ps(4., 9., 1., 7., -5., 11., -2., -3.);
@@ -739,7 +740,7 @@ mod tests {
739740
}
740741

741742
#[simd_test(enable = "fma")]
742-
unsafe fn test_mm_fnmadd_pd() {
743+
const unsafe fn test_mm_fnmadd_pd() {
743744
let a = _mm_setr_pd(1., 2.);
744745
let b = _mm_setr_pd(5., 3.);
745746
let c = _mm_setr_pd(4., 9.);
@@ -748,7 +749,7 @@ mod tests {
748749
}
749750

750751
#[simd_test(enable = "fma")]
751-
unsafe fn test_mm256_fnmadd_pd() {
752+
const unsafe fn test_mm256_fnmadd_pd() {
752753
let a = _mm256_setr_pd(1., 2., 3., 4.);
753754
let b = _mm256_setr_pd(5., 3., 7., 2.);
754755
let c = _mm256_setr_pd(4., 9., 1., 7.);
@@ -757,7 +758,7 @@ mod tests {
757758
}
758759

759760
#[simd_test(enable = "fma")]
760-
unsafe fn test_mm_fnmadd_ps() {
761+
const unsafe fn test_mm_fnmadd_ps() {
761762
let a = _mm_setr_ps(1., 2., 3., 4.);
762763
let b = _mm_setr_ps(5., 3., 7., 2.);
763764
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -766,7 +767,7 @@ mod tests {
766767
}
767768

768769
#[simd_test(enable = "fma")]
769-
unsafe fn test_mm256_fnmadd_ps() {
770+
const unsafe fn test_mm256_fnmadd_ps() {
770771
let a = _mm256_setr_ps(1., 2., 3., 4., 0., 10., -1., -2.);
771772
let b = _mm256_setr_ps(5., 3., 7., 2., 4., -6., 0., 14.);
772773
let c = _mm256_setr_ps(4., 9., 1., 7., -5., 11., -2., -3.);
@@ -775,7 +776,7 @@ mod tests {
775776
}
776777

777778
#[simd_test(enable = "fma")]
778-
unsafe fn test_mm_fnmadd_sd() {
779+
const unsafe fn test_mm_fnmadd_sd() {
779780
let a = _mm_setr_pd(1., 2.);
780781
let b = _mm_setr_pd(5., 3.);
781782
let c = _mm_setr_pd(4., 9.);
@@ -784,7 +785,7 @@ mod tests {
784785
}
785786

786787
#[simd_test(enable = "fma")]
787-
unsafe fn test_mm_fnmadd_ss() {
788+
const unsafe fn test_mm_fnmadd_ss() {
788789
let a = _mm_setr_ps(1., 2., 3., 4.);
789790
let b = _mm_setr_ps(5., 3., 7., 2.);
790791
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -793,7 +794,7 @@ mod tests {
793794
}
794795

795796
#[simd_test(enable = "fma")]
796-
unsafe fn test_mm_fnmsub_pd() {
797+
const unsafe fn test_mm_fnmsub_pd() {
797798
let a = _mm_setr_pd(1., 2.);
798799
let b = _mm_setr_pd(5., 3.);
799800
let c = _mm_setr_pd(4., 9.);
@@ -802,7 +803,7 @@ mod tests {
802803
}
803804

804805
#[simd_test(enable = "fma")]
805-
unsafe fn test_mm256_fnmsub_pd() {
806+
const unsafe fn test_mm256_fnmsub_pd() {
806807
let a = _mm256_setr_pd(1., 2., 3., 4.);
807808
let b = _mm256_setr_pd(5., 3., 7., 2.);
808809
let c = _mm256_setr_pd(4., 9., 1., 7.);
@@ -811,7 +812,7 @@ mod tests {
811812
}
812813

813814
#[simd_test(enable = "fma")]
814-
unsafe fn test_mm_fnmsub_ps() {
815+
const unsafe fn test_mm_fnmsub_ps() {
815816
let a = _mm_setr_ps(1., 2., 3., 4.);
816817
let b = _mm_setr_ps(5., 3., 7., 2.);
817818
let c = _mm_setr_ps(4., 9., 1., 7.);
@@ -820,7 +821,7 @@ mod tests {
820821
}
821822

822823
#[simd_test(enable = "fma")]
823-
unsafe fn test_mm256_fnmsub_ps() {
824+
const unsafe fn test_mm256_fnmsub_ps() {
824825
let a = _mm256_setr_ps(1., 2., 3., 4., 0., 10., -1., -2.);
825826
let b = _mm256_setr_ps(5., 3., 7., 2., 4., -6., 0., 14.);
826827
let c = _mm256_setr_ps(4., 9., 1., 7., -5., 11., -2., -3.);
@@ -829,7 +830,7 @@ mod tests {
829830
}
830831

831832
#[simd_test(enable = "fma")]
832-
unsafe fn test_mm_fnmsub_sd() {
833+
const unsafe fn test_mm_fnmsub_sd() {
833834
let a = _mm_setr_pd(1., 2.);
834835
let b = _mm_setr_pd(5., 3.);
835836
let c = _mm_setr_pd(4., 9.);
@@ -838,7 +839,7 @@ mod tests {
838839
}
839840

840841
#[simd_test(enable = "fma")]
841-
unsafe fn test_mm_fnmsub_ss() {
842+
const unsafe fn test_mm_fnmsub_ss() {
842843
let a = _mm_setr_ps(1., 2., 3., 4.);
843844
let b = _mm_setr_ps(5., 3., 7., 2.);
844845
let c = _mm_setr_ps(4., 9., 1., 7.);

0 commit comments

Comments
 (0)