public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH v4 0/6] Add Loongson SX/ASX instruction support to LoongArch target.
@ 2023-08-15  1:05 Chenghui Pan
  2023-08-15  1:05 ` [PATCH v4 1/6] LoongArch: Add Loongson SX vector directive compilation framework Chenghui Pan
                   ` (6 more replies)
  0 siblings, 7 replies; 13+ messages in thread
From: Chenghui Pan @ 2023-08-15  1:05 UTC (permalink / raw)
  To: gcc-patches; +Cc: xry111, i, chenglulu, xuchenghua, Chenghui Pan

This is an update of:
https://gcc.gnu.org/pipermail/gcc-patches/2023-August/626194.html

This version of patch set only introduces some small simplications of
implementation. Because I missed the size limitation of mail size, the
huge testsuite patches of v2 and v3 are not shown in the mail list. So,
testsuite patches are splited from this patch set again and will be submitted 
independently in the future.

Binutils-gdb introduced LSX/LASX support since 2.41 release:
https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00009.html

Brief history of patch set version:
v1 -> v2:
- Reduce usage of "unspec" in RTL template.
- Append Support of ADDR_REG_REG in LSX and LASX.
- Constraint docs are appended in gcc/doc/md.texi and ccomment block.
- Codes related to vecarg are removed.
- Testsuite of LSX and LASX is added in v2. (Because of the size limitation of
  mail list, these patches are not shown)
- Adjust the loongarch_expand_vector_init() function to reduce instruction 
  output amount.
- Some minor implementation changes of RTL templates.

v2 -> v3:
- Revert vabsd/xvabsd RTL templates to unspec impl.
- Resolve warning in gcc/config/loongarch/loongarch.cc when bootstrapping 
  with BOOT_CFLAGS="-O2 -ftree-vectorize -fno-vect-cost-model -mlasx".
- Remove redundant definitions in lasxintrin.h.
- Refine commit info.

Lulu Cheng (6):
  LoongArch: Add Loongson SX vector directive compilation framework.
  LoongArch: Add Loongson SX base instruction support.
  LoongArch: Add Loongson SX directive builtin function support.
  LoongArch: Add Loongson ASX vector directive compilation framework.
  LoongArch: Add Loongson ASX base instruction support.
  LoongArch: Add Loongson ASX directive builtin function support.

 gcc/config.gcc                                |    2 +-
 gcc/config/loongarch/constraints.md           |  131 +-
 .../loongarch/genopts/loongarch-strings       |    4 +
 gcc/config/loongarch/genopts/loongarch.opt.in |   12 +-
 gcc/config/loongarch/lasx.md                  | 5122 ++++++++++++++++
 gcc/config/loongarch/lasxintrin.h             | 5338 +++++++++++++++++
 gcc/config/loongarch/loongarch-builtins.cc    | 2686 ++++++++-
 gcc/config/loongarch/loongarch-c.cc           |   18 +
 gcc/config/loongarch/loongarch-def.c          |    6 +
 gcc/config/loongarch/loongarch-def.h          |    9 +-
 gcc/config/loongarch/loongarch-driver.cc      |   10 +
 gcc/config/loongarch/loongarch-driver.h       |    2 +
 gcc/config/loongarch/loongarch-ftypes.def     |  666 +-
 gcc/config/loongarch/loongarch-modes.def      |   39 +
 gcc/config/loongarch/loongarch-opts.cc        |   89 +-
 gcc/config/loongarch/loongarch-opts.h         |    3 +
 gcc/config/loongarch/loongarch-protos.h       |   35 +
 gcc/config/loongarch/loongarch-str.h          |    3 +
 gcc/config/loongarch/loongarch.cc             | 4586 +++++++++++++-
 gcc/config/loongarch/loongarch.h              |  117 +-
 gcc/config/loongarch/loongarch.md             |   56 +-
 gcc/config/loongarch/loongarch.opt            |   12 +-
 gcc/config/loongarch/lsx.md                   | 4481 ++++++++++++++
 gcc/config/loongarch/lsxintrin.h              | 5181 ++++++++++++++++
 gcc/config/loongarch/predicates.md            |  333 +-
 gcc/doc/md.texi                               |   11 +
 26 files changed, 28668 insertions(+), 284 deletions(-)
 create mode 100644 gcc/config/loongarch/lasx.md
 create mode 100644 gcc/config/loongarch/lasxintrin.h
 create mode 100644 gcc/config/loongarch/lsx.md
 create mode 100644 gcc/config/loongarch/lsxintrin.h

-- 
2.36.0


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-10-19  8:00 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-15  1:05 [PATCH v4 0/6] Add Loongson SX/ASX instruction support to LoongArch target Chenghui Pan
2023-08-15  1:05 ` [PATCH v4 1/6] LoongArch: Add Loongson SX vector directive compilation framework Chenghui Pan
2023-08-15  1:18   ` Xi Ruoyao
2023-08-15  1:31     ` PanChenghui
2023-08-15  1:05 ` [PATCH v4 2/6] LoongArch: Add Loongson SX base instruction support Chenghui Pan
2023-08-15  1:05 ` [PATCH v4 3/6] LoongArch: Add Loongson SX directive builtin function support Chenghui Pan
2023-08-15  1:05 ` [PATCH v4 4/6] LoongArch: Add Loongson ASX vector directive compilation framework Chenghui Pan
2023-08-15  1:05 ` [PATCH v4 5/6] LoongArch: Add Loongson ASX base instruction support Chenghui Pan
2023-08-15  1:05 ` [PATCH v4 6/6] LoongArch: Add Loongson ASX directive builtin function support Chenghui Pan
2023-08-16  3:27 ` [PATCH v4 0/6] Add Loongson SX/ASX instruction support to LoongArch target Xi Ruoyao
2023-08-17  7:20   ` Chenghui Pan
2023-08-20  8:25     ` Xi Ruoyao
2023-10-19  8:00       ` chenglulu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).