[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH 00/43] Add LoongArch LSX instructions
From: |
Song Gao |
Subject: |
[RFC PATCH 00/43] Add LoongArch LSX instructions |
Date: |
Sat, 24 Dec 2022 16:15:50 +0800 |
Hi, Merry Christmas!
This series adds LoongArch LSX instructions, Since the LoongArch
Vol2 is not open, So we use 'RFC' title.
About Test:
The new-abi gcc which support LSX is also not open, We use the old-abi gcc [1]
build
test code[2](tests/tcg/loongarch/vec/test_XXX*.c).
[1]:http://ftp.loongnix.cn/toolchain/gcc/release/loongarch/gcc8/loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.1.tar.xz
[2]:https://github.com/loongson/qemu/commit/a4f03d68c0c60fcc5bf62114fd1f7a6a7cdf1070
e.g
build:
loongarch64-linux-gnu-gcc -mlsx tests/tcg/loongarch64/vec/test_bit.c -o
test_bit
run:
./build/qemu-loongarch64 test_bit (qemu branch [2]:
tcg-old-abi-support-lsx)
Thanks.
SOng Gao
Song Gao (43):
target/loongarch: Add vector data type vec_t
target/loongarch: CPUCFG support LSX
target/loongarch: meson.build support build LSX
target/loongarch: Add CHECK_SXE maccro for check LSX enable
target/loongarch: Implement vadd/vsub
target/loongarch: Implement vaddi/vsubi
target/loongarch: Implement vneg
target/loongarch: Implement vsadd/vssub
target/loongarch: Implement vhaddw/vhsubw
target/loongarch: Implement vaddw/vsubw
target/loongarch: Implement vavg/vavgr
target/loongarch: Implement vabsd
target/loongarch: Implement vadda
target/loongarch: Implement vmax/vmin
target/loongarch: Implement vmul/vmuh/vmulw{ev/od}
target/loongarch: Implement vmadd/vmsub/vmaddw{ev/od}
target/loongarch: Implement vdiv/vmod
target/loongarch: Implement vsat
target/loongarch: Implement vexth
target/loongarch: Implement vsigncov
target/loongarch: Implement vmskltz/vmskgez/vmsknz
target/loongarch: Implement LSX logic instructions
target/loongarch: Implement vsll vsrl vsra vrotr
target/loongarch: Implement vsllwil vextl
target/loongarch: Implement vsrlr vsrar
target/loongarch: Implement vsrln vsran
target/loongarch: Implement vsrlrn vsrarn
target/loongarch: Implement vssrln vssran
target/loongarch: Implement vssrlrn vssrarn
target/loongarch: Implement vclo vclz
target/loongarch: Implement vpcnt
target/loongarch: Implement vbitclr vbitset vbitrev
target/loongarch: Implement vfrstp
target/loongarch: Implement LSX fpu arith instructions
target/loongarch: Implement LSX fpu fcvt instructions
target/loongarch: Implement vseq vsle vslt
target/loongarch: Implement vfcmp
target/loongarch: Implement vbitsel vset
target/loongarch: Implement vinsgr2vr vpickve2gr vreplgr2vr
target/loongarch: Implement vreplve vpack vpick
target/loongarch: Implement vilvl vilvh vextrins vshuf
target/loongarch: Implement vld vst
target/loongarch: Implement vldi
fpu/softfloat.c | 55 +
include/fpu/softfloat.h | 27 +
linux-user/loongarch64/signal.c | 4 +-
target/loongarch/cpu.c | 5 +-
target/loongarch/cpu.h | 20 +-
target/loongarch/disas.c | 911 ++++
target/loongarch/fpu_helper.c | 2 +-
target/loongarch/gdbstub.c | 4 +-
target/loongarch/helper.h | 748 +++
target/loongarch/insn_trans/trans_lsx.c.inc | 960 ++++
target/loongarch/insns.decode | 811 +++
target/loongarch/internals.h | 1 +
target/loongarch/lsx_helper.c | 5375 +++++++++++++++++++
target/loongarch/machine.c | 2 +-
target/loongarch/meson.build | 1 +
target/loongarch/translate.c | 11 +
16 files changed, 8929 insertions(+), 8 deletions(-)
create mode 100644 target/loongarch/insn_trans/trans_lsx.c.inc
create mode 100644 target/loongarch/lsx_helper.c
--
2.31.1
- [RFC PATCH 00/43] Add LoongArch LSX instructions,
Song Gao <=
- [RFC PATCH 04/43] target/loongarch: Add CHECK_SXE maccro for check LSX enable, Song Gao, 2022/12/24
- [RFC PATCH 08/43] target/loongarch: Implement vsadd/vssub, Song Gao, 2022/12/24
- [RFC PATCH 20/43] target/loongarch: Implement vsigncov, Song Gao, 2022/12/24
- [RFC PATCH 11/43] target/loongarch: Implement vavg/vavgr, Song Gao, 2022/12/24
- [RFC PATCH 03/43] target/loongarch: meson.build support build LSX, Song Gao, 2022/12/24
- [RFC PATCH 25/43] target/loongarch: Implement vsrlr vsrar, Song Gao, 2022/12/24
- [RFC PATCH 34/43] target/loongarch: Implement LSX fpu arith instructions, Song Gao, 2022/12/24