Re:[pushed] [PATCH v4 00/22] Added support for ASX vector instructions.

2023-09-13 Thread chenglulu

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.

2023-09-12 Thread 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 |  911 ++
 .../loongarch/vector/lasx/lasx-xvfclass_d.c   |  152 ++
 .../loongarch/vector/lasx/lasx-xvfclass_s.c   |   95 +
 .../loongarch/vector/l