[PATCH v2 0/6] Add LoongArch v1.1 div32 and ld-seq-sa support
Xi Ruoyao
xry111@xry111.site
Fri Nov 17 20:43:17 GMT 2023
Superseds
https://gcc.gnu.org/pipermail/gcc-patches/2023-November/636795.html.
Requires
https://gcc.gnu.org/pipermail/gcc-patches/2023-November/636946.html.
Changes:
- Rebase on top of "Add LoongarchV1.1 instructions support".
- Not to translate loongarch-def.c C++. Use int64_t instead of
HOST_WIDE_INT in loongarch-def.h.
- In genopts, also generates cpucfg_useful_idx[] and N_CPUCFG_WORDS.
Use decimals instead of hexidecimals for CPUCFG word index to make awk
happy to perform numerical comparision.
- Dump arch and feature info as comments in generated assembly if
-fverbose-asm. It's helpful for testing and debugging.
Xi Ruoyao (6):
LoongArch: Fix internal error running "gcc -march=native" on LA664
LoongArch: genopts: Add infrastructure to generate code for new
features in ISA evolution
LoongArch: Add evolution features of base ISA revisions
LoongArch: Take the advantage of -mdiv32 if it's enabled
LoongArch: Don't emit dbar 0x700 if -mld-seq-sa
LoongArch: Add fine-grained control for LAM_BH and LAMCAS
gcc/config/loongarch/genopts/genstr.sh | 92 ++++++++++++++-
gcc/config/loongarch/genopts/isa-evolution.in | 4 +
.../loongarch/genopts/loongarch-strings | 1 +
gcc/config/loongarch/genopts/loongarch.opt.in | 10 ++
gcc/config/loongarch/loongarch-cpu.cc | 105 +++++++++++-------
gcc/config/loongarch/loongarch-cpucfg-map.h | 50 +++++++++
gcc/config/loongarch/loongarch-def.c | 1 +
gcc/config/loongarch/loongarch-def.h | 12 ++
gcc/config/loongarch/loongarch-opts.cc | 3 +
gcc/config/loongarch/loongarch-str.h | 10 +-
gcc/config/loongarch/loongarch.cc | 35 +++++-
gcc/config/loongarch/loongarch.md | 31 +++++-
gcc/config/loongarch/loongarch.opt | 31 +++++-
gcc/config/loongarch/sync.md | 25 +++--
gcc/config/loongarch/t-loongarch | 21 +++-
.../gcc.target/loongarch/div-div32.c | 31 ++++++
.../gcc.target/loongarch/div-no-div32.c | 11 ++
17 files changed, 403 insertions(+), 70 deletions(-)
create mode 100644 gcc/config/loongarch/genopts/isa-evolution.in
create mode 100644 gcc/config/loongarch/loongarch-cpucfg-map.h
create mode 100644 gcc/testsuite/gcc.target/loongarch/div-div32.c
create mode 100644 gcc/testsuite/gcc.target/loongarch/div-no-div32.c
--
2.42.1
More information about the Gcc-patches
mailing list