Re:[pushed] [PATCH v4 00/22] Added support for ASX vector instructions.
Pushed to r14-3951. 在 2023/9/13 上午11:38, Xiaolong Chen 写道: In order to better test the function of the vector instruction, the 256 bit test cases are further split according to the function of the instruction. Xiaolong Chen (22): LoongArch: Add tests for ASX vector xvadd/xvadda/xvaddi/xvaddwev/ xvaddwodxvsadd instructions. LoongArch: Add tests for ASX vector xvhadd/xvhaddw/xvmaddwev/xvmaddwod instructions. LoongArch: Add tests for ASX vector subtraction instructions. LoongArch: Add tests for ASX vector xvmul/xvmod/xvdiv instructions. LoongArch: Add tests for ASX vector xvmax/xvmaxi/xvmin/xvmini instructions. LoongArch: Add tests for ASX vector xvldi/xvmskgez/xvmskltz/xvmsknz/xvmuh /xvsigncov instructions. LoongArch: Add tests for ASX vector xvand/xvandi/xvandn/xvor/xvori/ xvnor/xvnori/xvxor/xvxori instructions. LoongArch: Add tests for ASX vector xvsll/xvsrl instructions. LoongArch: Add tests for ASX vector xvextl/xvsra/xvsran/xvsrarn instructions. LoongArch: Add tests for ASX vector xvssran/xvssrani/xvssrarn/xvssrarni/xvssrln/ xvssrlni/xvssrlrn/xvssrlrni instructions. LoongArch: Add tests for ASX vector xvbitclr/xvbitclri/xvbitrev/xvbitrevi/ xvbitsel/xvbitseli/xvbitset/xvbitseti/xvclo/xvclz/xvpcnt instructions. LoongArch: Add tests for ASX builtin functions. LoongArch: Add tests for ASX xvldrepl/xvstelm instruction generation. LoongArch: Add tests for ASX vector floating-point operation instruction. LoongArch: Add tests for ASX vector floating-point conversion instruction. LoongArch: Add tests for ASX vector comparison and selection instruction. LoongArch: Add tests for ASX vector xvfnmadd/xvfrstp/xvfstpi/xvhsubw/ xvmsub/xvrotr/xvrotri/xvld/xvst instructions. LoongArch: Add tests for ASX vector xvabsd/xvavg/xvavgr/xvbsll/xvbsrl/xvneg/ xvsat instructions. LoongArch: Add tests for ASX vector xvfcmp{caf/ceq/cle/clt/cne/cor/cun} instructions. LoongArch: Add tests for ASX vector xvfcmp{saf/seq/sle/slt/sne/sor/sun} instructions. LoongArch: Add tests for ASX vector xvext2xv/xvexth/xvextins/xvilvh/xvilvl/xvinsgr2vr/ xvinsve0/xvprem/xvpremi instructions. LoongArch: Add tests for ASX vector xvpackev/xvpackod/xvpickev/xvpickod/ xvpickve2gr/xvreplgr2vr/xvreplve/xvreplve0/xvreplvei/xvshuf4i/xvshuf instructions. .../loongarch/vector/lasx/lasx-builtin.c | 1509 .../loongarch/vector/lasx/lasx-xvabsd-1.c | 485 + .../loongarch/vector/lasx/lasx-xvabsd-2.c | 650 +++ .../loongarch/vector/lasx/lasx-xvadd.c| 725 .../loongarch/vector/lasx/lasx-xvadda.c | 785 .../loongarch/vector/lasx/lasx-xvaddi.c | 427 + .../loongarch/vector/lasx/lasx-xvaddwev-1.c | 740 .../loongarch/vector/lasx/lasx-xvaddwev-2.c | 485 + .../loongarch/vector/lasx/lasx-xvaddwev-3.c | 515 ++ .../loongarch/vector/lasx/lasx-xvaddwod-1.c | 530 ++ .../loongarch/vector/lasx/lasx-xvaddwod-2.c | 560 ++ .../loongarch/vector/lasx/lasx-xvaddwod-3.c | 485 + .../loongarch/vector/lasx/lasx-xvand.c| 155 ++ .../loongarch/vector/lasx/lasx-xvandi.c | 196 ++ .../loongarch/vector/lasx/lasx-xvandn.c | 125 ++ .../loongarch/vector/lasx/lasx-xvavg-1.c | 680 +++ .../loongarch/vector/lasx/lasx-xvavg-2.c | 560 ++ .../loongarch/vector/lasx/lasx-xvavgr-1.c | 770 .../loongarch/vector/lasx/lasx-xvavgr-2.c | 650 +++ .../loongarch/vector/lasx/lasx-xvbitclr.c | 635 +++ .../loongarch/vector/lasx/lasx-xvbitclri.c| 515 ++ .../loongarch/vector/lasx/lasx-xvbitrev.c | 650 +++ .../loongarch/vector/lasx/lasx-xvbitrevi.c| 317 .../loongarch/vector/lasx/lasx-xvbitsel.c | 134 ++ .../loongarch/vector/lasx/lasx-xvbitseli.c| 185 ++ .../loongarch/vector/lasx/lasx-xvbitset.c | 620 +++ .../loongarch/vector/lasx/lasx-xvbitseti.c| 405 + .../loongarch/vector/lasx/lasx-xvbsll_v.c | 130 ++ .../loongarch/vector/lasx/lasx-xvbsrl_v.c | 64 + .../loongarch/vector/lasx/lasx-xvclo.c| 449 + .../loongarch/vector/lasx/lasx-xvclz.c| 504 ++ .../loongarch/vector/lasx/lasx-xvdiv-1.c | 485 + .../loongarch/vector/lasx/lasx-xvdiv-2.c | 500 ++ .../loongarch/vector/lasx/lasx-xvext2xv-1.c | 515 ++ .../loongarch/vector/lasx/lasx-xvext2xv-2.c | 669 +++ .../loongarch/vector/lasx/lasx-xvexth-1.c | 350 .../loongarch/vector/lasx/lasx-xvexth-2.c | 592 ++ .../loongarch/vector/lasx/lasx-xvextl-1.c | 86 + .../loongarch/vector/lasx/lasx-xvextl-2.c | 163 ++ .../loongarch/vector/lasx/lasx-xvextrins.c| 515 ++ .../loongarch/vector/lasx/lasx-xvfadd_d.c | 545 ++ .../loongarch/vector/lasx/lasx-xvfadd_s.c | 9
[PATCH v4 00/22] Added support for ASX vector instructions.
In order to better test the function of the vector instruction, the 256 bit test cases are further split according to the function of the instruction. Xiaolong Chen (22): LoongArch: Add tests for ASX vector xvadd/xvadda/xvaddi/xvaddwev/ xvaddwodxvsadd instructions. LoongArch: Add tests for ASX vector xvhadd/xvhaddw/xvmaddwev/xvmaddwod instructions. LoongArch: Add tests for ASX vector subtraction instructions. LoongArch: Add tests for ASX vector xvmul/xvmod/xvdiv instructions. LoongArch: Add tests for ASX vector xvmax/xvmaxi/xvmin/xvmini instructions. LoongArch: Add tests for ASX vector xvldi/xvmskgez/xvmskltz/xvmsknz/xvmuh /xvsigncov instructions. LoongArch: Add tests for ASX vector xvand/xvandi/xvandn/xvor/xvori/ xvnor/xvnori/xvxor/xvxori instructions. LoongArch: Add tests for ASX vector xvsll/xvsrl instructions. LoongArch: Add tests for ASX vector xvextl/xvsra/xvsran/xvsrarn instructions. LoongArch: Add tests for ASX vector xvssran/xvssrani/xvssrarn/xvssrarni/xvssrln/ xvssrlni/xvssrlrn/xvssrlrni instructions. LoongArch: Add tests for ASX vector xvbitclr/xvbitclri/xvbitrev/xvbitrevi/ xvbitsel/xvbitseli/xvbitset/xvbitseti/xvclo/xvclz/xvpcnt instructions. LoongArch: Add tests for ASX builtin functions. LoongArch: Add tests for ASX xvldrepl/xvstelm instruction generation. LoongArch: Add tests for ASX vector floating-point operation instruction. LoongArch: Add tests for ASX vector floating-point conversion instruction. LoongArch: Add tests for ASX vector comparison and selection instruction. LoongArch: Add tests for ASX vector xvfnmadd/xvfrstp/xvfstpi/xvhsubw/ xvmsub/xvrotr/xvrotri/xvld/xvst instructions. LoongArch: Add tests for ASX vector xvabsd/xvavg/xvavgr/xvbsll/xvbsrl/xvneg/ xvsat instructions. LoongArch: Add tests for ASX vector xvfcmp{caf/ceq/cle/clt/cne/cor/cun} instructions. LoongArch: Add tests for ASX vector xvfcmp{saf/seq/sle/slt/sne/sor/sun} instructions. LoongArch: Add tests for ASX vector xvext2xv/xvexth/xvextins/xvilvh/xvilvl/xvinsgr2vr/ xvinsve0/xvprem/xvpremi instructions. LoongArch: Add tests for ASX vector xvpackev/xvpackod/xvpickev/xvpickod/ xvpickve2gr/xvreplgr2vr/xvreplve/xvreplve0/xvreplvei/xvshuf4i/xvshuf instructions. .../loongarch/vector/lasx/lasx-builtin.c | 1509 .../loongarch/vector/lasx/lasx-xvabsd-1.c | 485 + .../loongarch/vector/lasx/lasx-xvabsd-2.c | 650 +++ .../loongarch/vector/lasx/lasx-xvadd.c| 725 .../loongarch/vector/lasx/lasx-xvadda.c | 785 .../loongarch/vector/lasx/lasx-xvaddi.c | 427 + .../loongarch/vector/lasx/lasx-xvaddwev-1.c | 740 .../loongarch/vector/lasx/lasx-xvaddwev-2.c | 485 + .../loongarch/vector/lasx/lasx-xvaddwev-3.c | 515 ++ .../loongarch/vector/lasx/lasx-xvaddwod-1.c | 530 ++ .../loongarch/vector/lasx/lasx-xvaddwod-2.c | 560 ++ .../loongarch/vector/lasx/lasx-xvaddwod-3.c | 485 + .../loongarch/vector/lasx/lasx-xvand.c| 155 ++ .../loongarch/vector/lasx/lasx-xvandi.c | 196 ++ .../loongarch/vector/lasx/lasx-xvandn.c | 125 ++ .../loongarch/vector/lasx/lasx-xvavg-1.c | 680 +++ .../loongarch/vector/lasx/lasx-xvavg-2.c | 560 ++ .../loongarch/vector/lasx/lasx-xvavgr-1.c | 770 .../loongarch/vector/lasx/lasx-xvavgr-2.c | 650 +++ .../loongarch/vector/lasx/lasx-xvbitclr.c | 635 +++ .../loongarch/vector/lasx/lasx-xvbitclri.c| 515 ++ .../loongarch/vector/lasx/lasx-xvbitrev.c | 650 +++ .../loongarch/vector/lasx/lasx-xvbitrevi.c| 317 .../loongarch/vector/lasx/lasx-xvbitsel.c | 134 ++ .../loongarch/vector/lasx/lasx-xvbitseli.c| 185 ++ .../loongarch/vector/lasx/lasx-xvbitset.c | 620 +++ .../loongarch/vector/lasx/lasx-xvbitseti.c| 405 + .../loongarch/vector/lasx/lasx-xvbsll_v.c | 130 ++ .../loongarch/vector/lasx/lasx-xvbsrl_v.c | 64 + .../loongarch/vector/lasx/lasx-xvclo.c| 449 + .../loongarch/vector/lasx/lasx-xvclz.c| 504 ++ .../loongarch/vector/lasx/lasx-xvdiv-1.c | 485 + .../loongarch/vector/lasx/lasx-xvdiv-2.c | 500 ++ .../loongarch/vector/lasx/lasx-xvext2xv-1.c | 515 ++ .../loongarch/vector/lasx/lasx-xvext2xv-2.c | 669 +++ .../loongarch/vector/lasx/lasx-xvexth-1.c | 350 .../loongarch/vector/lasx/lasx-xvexth-2.c | 592 ++ .../loongarch/vector/lasx/lasx-xvextl-1.c | 86 + .../loongarch/vector/lasx/lasx-xvextl-2.c | 163 ++ .../loongarch/vector/lasx/lasx-xvextrins.c| 515 ++ .../loongarch/vector/lasx/lasx-xvfadd_d.c | 545 ++ .../loongarch/vector/lasx/lasx-xvfadd_s.c | 911 ++ .../loongarch/vector/lasx/lasx-xvfclass_d.c | 152 ++ .../loongarch/vector/lasx/lasx-xvfclass_s.c | 95 + .../loongarch/vector/l