@@ -480,10 +480,7 @@ void test_suba(int[] a0, int[] a1, int[] a2) {
480
480
481
481
@ Test
482
482
@ IR (counts = { IRNode .SUB_VI , "> 0" , IRNode .LSHIFT_VI , "> 0" },
483
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
484
- @ IR (counts = { IRNode .SUB_VI , "> 0" , IRNode .LSHIFT_VI , "> 0" },
485
- applyIfPlatform = {"riscv64" , "true" },
486
- applyIfCPUFeature = {"v" , "true" })
483
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
487
484
void test_mulc (int [] a0 , int [] a1 ) {
488
485
for (int i = 0 ; i < a0 .length ; i +=1 ) {
489
486
a0 [i ] = (int )(a1 [i ]*VALUE );
@@ -492,10 +489,7 @@ void test_mulc(int[] a0, int[] a1) {
492
489
493
490
@ Test
494
491
@ IR (counts = { IRNode .SUB_VI , "> 0" , IRNode .LSHIFT_VI , "> 0" },
495
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
496
- @ IR (counts = { IRNode .SUB_VI , "> 0" , IRNode .LSHIFT_VI , "> 0" },
497
- applyIfPlatform = {"riscv64" , "true" },
498
- applyIfCPUFeature = {"v" , "true" })
492
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
499
493
void test_mulc_n (int [] a0 , int [] a1 ) {
500
494
for (int i = 0 ; i < a0 .length ; i +=1 ) {
501
495
a0 [i ] = (int )(a1 [i ]*(-VALUE ));
@@ -527,15 +521,7 @@ void test_mula(int[] a0, int[] a1, int[] a2) {
527
521
IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" ,
528
522
IRNode .SUB_VI ,
529
523
IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" },
530
- applyIfCPUFeatureOr = {"avx2" , "true" , "sve" , "true" })
531
- @ IR (counts = { IRNode .ADD_VI ,
532
- IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" ,
533
- IRNode .RSHIFT_VI ,
534
- IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" ,
535
- IRNode .SUB_VI ,
536
- IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" },
537
- applyIfPlatform = {"riscv64" , "true" },
538
- applyIfCPUFeature = {"v" , "true" })
524
+ applyIfCPUFeatureOr = {"avx2" , "true" , "sve" , "true" , "rvv" , "true" })
539
525
// Not vectorized: On aarch64, vectorization for this example results in
540
526
// MulVL nodes, which asimd does not support.
541
527
@ IR (counts = { IRNode .LOAD_VECTOR_I , "= 0" ,
@@ -555,15 +541,7 @@ void test_divc(int[] a0, int[] a1) {
555
541
IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" ,
556
542
IRNode .SUB_VI ,
557
543
IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" },
558
- applyIfCPUFeatureOr = {"avx2" , "true" , "sve" , "true" })
559
- @ IR (counts = { IRNode .ADD_VI ,
560
- IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" ,
561
- IRNode .RSHIFT_VI ,
562
- IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" ,
563
- IRNode .SUB_VI ,
564
- IRNode .VECTOR_SIZE + "min(max_int, max_long)" , "> 0" },
565
- applyIfPlatform = {"riscv64" , "true" },
566
- applyIfCPUFeature = {"v" , "true" })
544
+ applyIfCPUFeatureOr = {"avx2" , "true" , "sve" , "true" , "rvv" , "true" })
567
545
// Not vectorized: On aarch64, vectorization for this example results in
568
546
// MulVL nodes, which asimd does not support.
569
547
@ IR (counts = { IRNode .LOAD_VECTOR_I , "= 0" ,
@@ -683,10 +661,7 @@ void test_xora(int[] a0, int[] a1, int[] a2) {
683
661
684
662
@ Test
685
663
@ IR (counts = { IRNode .LSHIFT_VI , "> 0" },
686
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
687
- @ IR (counts = { IRNode .LSHIFT_VI , "> 0" },
688
- applyIfPlatform = {"riscv64" , "true" },
689
- applyIfCPUFeature = {"v" , "true" })
664
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
690
665
void test_sllc (int [] a0 , int [] a1 ) {
691
666
for (int i = 0 ; i < a0 .length ; i +=1 ) {
692
667
a0 [i ] = (int )(a1 [i ]<<VALUE );
@@ -695,10 +670,7 @@ void test_sllc(int[] a0, int[] a1) {
695
670
696
671
@ Test
697
672
@ IR (counts = { IRNode .LSHIFT_VI , "> 0" },
698
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
699
- @ IR (counts = { IRNode .LSHIFT_VI , "> 0" },
700
- applyIfPlatform = {"riscv64" , "true" },
701
- applyIfCPUFeature = {"v" , "true" })
673
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
702
674
void test_sllc_n (int [] a0 , int [] a1 ) {
703
675
for (int i = 0 ; i < a0 .length ; i +=1 ) {
704
676
a0 [i ] = (int )(a1 [i ]<<(-VALUE ));
@@ -710,12 +682,7 @@ void test_sllc_n(int[] a0, int[] a1) {
710
682
@ IR (counts = { IRNode .LSHIFT_VI , "= 0" ,
711
683
IRNode .LOAD_VECTOR_I , "> 0" ,
712
684
IRNode .STORE_VECTOR , "> 0" },
713
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
714
- @ IR (counts = { IRNode .LSHIFT_VI , "= 0" ,
715
- IRNode .LOAD_VECTOR_I , "> 0" ,
716
- IRNode .STORE_VECTOR , "> 0" },
717
- applyIfPlatform = {"riscv64" , "true" },
718
- applyIfCPUFeature = {"v" , "true" })
685
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
719
686
void test_sllc_o (int [] a0 , int [] a1 ) {
720
687
for (int i = 0 ; i < a0 .length ; i +=1 ) {
721
688
a0 [i ] = (int )(a1 [i ]<<SHIFT );
@@ -727,12 +694,7 @@ void test_sllc_o(int[] a0, int[] a1) {
727
694
@ IR (counts = { IRNode .LSHIFT_VI , "= 0" ,
728
695
IRNode .LOAD_VECTOR_I , "> 0" ,
729
696
IRNode .STORE_VECTOR , "> 0" },
730
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
731
- @ IR (counts = { IRNode .LSHIFT_VI , "= 0" ,
732
- IRNode .LOAD_VECTOR_I , "> 0" ,
733
- IRNode .STORE_VECTOR , "> 0" },
734
- applyIfPlatform = {"riscv64" , "true" },
735
- applyIfCPUFeature = {"v" , "true" })
697
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
736
698
void test_sllc_on (int [] a0 , int [] a1 ) {
737
699
for (int i = 0 ; i < a0 .length ; i +=1 ) {
738
700
a0 [i ] = (int )(a1 [i ]<<(-SHIFT ));
@@ -741,10 +703,7 @@ void test_sllc_on(int[] a0, int[] a1) {
741
703
742
704
@ Test
743
705
@ IR (counts = { IRNode .LSHIFT_VI , "> 0" },
744
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
745
- @ IR (counts = { IRNode .LSHIFT_VI , "> 0" },
746
- applyIfPlatform = {"riscv64" , "true" },
747
- applyIfCPUFeature = {"v" , "true" })
706
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
748
707
void test_sllv (int [] a0 , int [] a1 , int b ) {
749
708
for (int i = 0 ; i < a0 .length ; i +=1 ) {
750
709
a0 [i ] = (int )(a1 [i ]<<b );
@@ -753,10 +712,7 @@ void test_sllv(int[] a0, int[] a1, int b) {
753
712
754
713
@ Test
755
714
@ IR (counts = { IRNode .URSHIFT_VI , "> 0" },
756
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
757
- @ IR (counts = { IRNode .URSHIFT_VI , "> 0" },
758
- applyIfPlatform = {"riscv64" , "true" },
759
- applyIfCPUFeature = {"v" , "true" })
715
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
760
716
void test_srlc (int [] a0 , int [] a1 ) {
761
717
for (int i = 0 ; i < a0 .length ; i +=1 ) {
762
718
a0 [i ] = (int )(a1 [i ]>>>VALUE );
@@ -765,10 +721,7 @@ void test_srlc(int[] a0, int[] a1) {
765
721
766
722
@ Test
767
723
@ IR (counts = { IRNode .URSHIFT_VI , "> 0" },
768
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
769
- @ IR (counts = { IRNode .URSHIFT_VI , "> 0" },
770
- applyIfPlatform = {"riscv64" , "true" },
771
- applyIfCPUFeature = {"v" , "true" })
724
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
772
725
void test_srlc_n (int [] a0 , int [] a1 ) {
773
726
for (int i = 0 ; i < a0 .length ; i +=1 ) {
774
727
a0 [i ] = (int )(a1 [i ]>>>(-VALUE ));
@@ -780,12 +733,7 @@ void test_srlc_n(int[] a0, int[] a1) {
780
733
@ IR (counts = { IRNode .URSHIFT_VI , "= 0" ,
781
734
IRNode .LOAD_VECTOR_I , "> 0" ,
782
735
IRNode .STORE_VECTOR , "> 0" },
783
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
784
- @ IR (counts = { IRNode .URSHIFT_VI , "= 0" ,
785
- IRNode .LOAD_VECTOR_I , "> 0" ,
786
- IRNode .STORE_VECTOR , "> 0" },
787
- applyIfPlatform = {"riscv64" , "true" },
788
- applyIfCPUFeature = {"v" , "true" })
736
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
789
737
void test_srlc_o (int [] a0 , int [] a1 ) {
790
738
for (int i = 0 ; i < a0 .length ; i +=1 ) {
791
739
a0 [i ] = (int )(a1 [i ]>>>SHIFT );
@@ -797,12 +745,7 @@ void test_srlc_o(int[] a0, int[] a1) {
797
745
@ IR (counts = { IRNode .URSHIFT_VI , "= 0" ,
798
746
IRNode .LOAD_VECTOR_I , "> 0" ,
799
747
IRNode .STORE_VECTOR , "> 0" },
800
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
801
- @ IR (counts = { IRNode .URSHIFT_VI , "= 0" ,
802
- IRNode .LOAD_VECTOR_I , "> 0" ,
803
- IRNode .STORE_VECTOR , "> 0" },
804
- applyIfPlatform = {"riscv64" , "true" },
805
- applyIfCPUFeature = {"v" , "true" })
748
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
806
749
void test_srlc_on (int [] a0 , int [] a1 ) {
807
750
for (int i = 0 ; i < a0 .length ; i +=1 ) {
808
751
a0 [i ] = (int )(a1 [i ]>>>(-SHIFT ));
@@ -811,10 +754,7 @@ void test_srlc_on(int[] a0, int[] a1) {
811
754
812
755
@ Test
813
756
@ IR (counts = { IRNode .URSHIFT_VI , "> 0" },
814
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
815
- @ IR (counts = { IRNode .URSHIFT_VI , "> 0" },
816
- applyIfPlatform = {"riscv64" , "true" },
817
- applyIfCPUFeature = {"v" , "true" })
757
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
818
758
void test_srlv (int [] a0 , int [] a1 , int b ) {
819
759
for (int i = 0 ; i < a0 .length ; i +=1 ) {
820
760
a0 [i ] = (int )(a1 [i ]>>>b );
@@ -823,10 +763,7 @@ void test_srlv(int[] a0, int[] a1, int b) {
823
763
824
764
@ Test
825
765
@ IR (counts = { IRNode .RSHIFT_VI , "> 0" },
826
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
827
- @ IR (counts = { IRNode .RSHIFT_VI , "> 0" },
828
- applyIfPlatform = {"riscv64" , "true" },
829
- applyIfCPUFeature = {"v" , "true" })
766
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
830
767
void test_srac (int [] a0 , int [] a1 ) {
831
768
for (int i = 0 ; i < a0 .length ; i +=1 ) {
832
769
a0 [i ] = (int )(a1 [i ]>>VALUE );
@@ -835,10 +772,7 @@ void test_srac(int[] a0, int[] a1) {
835
772
836
773
@ Test
837
774
@ IR (counts = { IRNode .RSHIFT_VI , "> 0" },
838
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
839
- @ IR (counts = { IRNode .RSHIFT_VI , "> 0" },
840
- applyIfPlatform = {"riscv64" , "true" },
841
- applyIfCPUFeature = {"v" , "true" })
775
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
842
776
void test_srac_n (int [] a0 , int [] a1 ) {
843
777
for (int i = 0 ; i < a0 .length ; i +=1 ) {
844
778
a0 [i ] = (int )(a1 [i ]>>(-VALUE ));
@@ -850,12 +784,7 @@ void test_srac_n(int[] a0, int[] a1) {
850
784
@ IR (counts = { IRNode .RSHIFT_VI , "= 0" ,
851
785
IRNode .LOAD_VECTOR_I , "> 0" ,
852
786
IRNode .STORE_VECTOR , "> 0" },
853
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
854
- @ IR (counts = { IRNode .RSHIFT_VI , "= 0" ,
855
- IRNode .LOAD_VECTOR_I , "> 0" ,
856
- IRNode .STORE_VECTOR , "> 0" },
857
- applyIfPlatform = {"riscv64" , "true" },
858
- applyIfCPUFeature = {"v" , "true" })
787
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
859
788
void test_srac_o (int [] a0 , int [] a1 ) {
860
789
for (int i = 0 ; i < a0 .length ; i +=1 ) {
861
790
a0 [i ] = (int )(a1 [i ]>>SHIFT );
@@ -867,12 +796,7 @@ void test_srac_o(int[] a0, int[] a1) {
867
796
@ IR (counts = { IRNode .RSHIFT_VI , "= 0" ,
868
797
IRNode .LOAD_VECTOR_I , "> 0" ,
869
798
IRNode .STORE_VECTOR , "> 0" },
870
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
871
- @ IR (counts = { IRNode .RSHIFT_VI , "= 0" ,
872
- IRNode .LOAD_VECTOR_I , "> 0" ,
873
- IRNode .STORE_VECTOR , "> 0" },
874
- applyIfPlatform = {"riscv64" , "true" },
875
- applyIfCPUFeature = {"v" , "true" })
799
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
876
800
void test_srac_on (int [] a0 , int [] a1 ) {
877
801
for (int i = 0 ; i < a0 .length ; i +=1 ) {
878
802
a0 [i ] = (int )(a1 [i ]>>(-SHIFT ));
@@ -881,10 +805,7 @@ void test_srac_on(int[] a0, int[] a1) {
881
805
882
806
@ Test
883
807
@ IR (counts = { IRNode .RSHIFT_VI , "> 0" },
884
- applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" })
885
- @ IR (counts = { IRNode .RSHIFT_VI , "> 0" },
886
- applyIfPlatform = {"riscv64" , "true" },
887
- applyIfCPUFeature = {"v" , "true" })
808
+ applyIfCPUFeatureOr = {"sse2" , "true" , "asimd" , "true" , "rvv" , "true" })
888
809
void test_srav (int [] a0 , int [] a1 , int b ) {
889
810
for (int i = 0 ; i < a0 .length ; i +=1 ) {
890
811
a0 [i ] = (int )(a1 [i ]>>b );
0 commit comments