public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Claudio Bantaloukas <claudio.bantaloukas@arm.com>
To: <gcc-patches@gcc.gnu.org>
Cc: Claudio Bantaloukas <claudio.bantaloukas@arm.com>
Subject: [PATCH v3 0/3] aarch64: Add initial support for +fp8 arch extensions
Date: Fri, 26 Jul 2024 16:32:51 +0000	[thread overview]
Message-ID: <20240726163254.1174686-1-claudio.bantaloukas@arm.com> (raw)


This series introduces initial flags and functionality for the fp8 feature.

Specifically, the following are added:
- functions that enable constructing valid fpm register values.
- support for the '+fp8' -march modifier.
- support for reading and writing the new system register FPMR (Floating Point Mode
  Register) which configures the new FP8 features

Tested against aarch64-unknown-linux-gnu.

V1 of this patch series had "aarch64: Add march flags for +fp8 arch extensions" as
cover letter title. Since then, changes in V2 are:

aarch64: Add march flags for +fp8 arch extensions
- Removed __ARM_FEATURE_FP8 define: will be added once the relevant features are in.
- Some unnecessary whitespace changes were removed.
- Helper function names now begin with __arm.

aarch64: Add support for moving fpm system register
- Removed a misleading comment.
- Removed unnecessary modifier in .md

aarch64: Add fpm register helper functions.
- Helper functions and fpm_t types are available unconditionally when including arm_acle.h

Changes in V3 are:

aarch64: Add march flags for +fp8 arch extensions
- removed unnecessary check-function-bodies check

aarch64: Add support for moving fpm system register
- added check-function-bodies check

aarch64: Add fpm register helper functions.
- moved fp8 types and helper functions into a new private header file arm_private_fp8.h
- arm_neon.h and arm_sve.h now include the new header
- added tests that check the helpers are available when including arm_neon.h
  arm_sve.h or arm_sme.h 

Is this ok for master? I do not have merge permissions. Can someone merge this for me please?

Thanks,
Claudio Bantaloukas


Claudio Bantaloukas (3):
  aarch64: Add march flags for +fp8 arch extensions
  aarch64: Add support for moving fpm system register
  aarch64: Add fpm register helper functions.

 gcc/config.gcc                                |   2 +-
 .../aarch64/aarch64-option-extensions.def     |   2 +
 gcc/config/aarch64/aarch64.cc                 |   8 ++
 gcc/config/aarch64/aarch64.h                  |  17 ++-
 gcc/config/aarch64/aarch64.md                 |  30 +++--
 gcc/config/aarch64/arm_neon.h                 |   1 +
 gcc/config/aarch64/arm_private_fp8.h          |  80 +++++++++++
 gcc/config/aarch64/arm_sve.h                  |   1 +
 gcc/config/aarch64/constraints.md             |   3 +
 gcc/doc/invoke.texi                           |   2 +
 .../aarch64/acle/fp8-helpers-neon.c           |  53 ++++++++
 .../gcc.target/aarch64/acle/fp8-helpers-sme.c |  12 ++
 .../gcc.target/aarch64/acle/fp8-helpers-sve.c |  12 ++
 gcc/testsuite/gcc.target/aarch64/acle/fp8.c   | 124 ++++++++++++++++++
 14 files changed, 332 insertions(+), 15 deletions(-)
 create mode 100644 gcc/config/aarch64/arm_private_fp8.h
 create mode 100644 gcc/testsuite/gcc.target/aarch64/acle/fp8-helpers-neon.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/acle/fp8-helpers-sme.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/acle/fp8-helpers-sve.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/acle/fp8.c

-- 
2.43.0


             reply	other threads:[~2024-07-26 16:33 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-26 16:32 Claudio Bantaloukas [this message]
2024-07-26 16:32 ` [PATCH v3 1/3] aarch64: Add march flags " Claudio Bantaloukas
2024-07-29  7:30   ` Kyrylo Tkachov
2024-07-30 13:41     ` Claudio Bantaloukas
2024-07-26 16:32 ` [PATCH v3 2/3] aarch64: Add support for moving fpm system register Claudio Bantaloukas
2024-07-29 12:13   ` Richard Sandiford
2024-07-30 13:27     ` Claudio Bantaloukas
2024-07-26 16:32 ` [PATCH v3 3/3] aarch64: Add fpm register helper functions Claudio Bantaloukas
2024-07-29  7:34   ` Kyrylo Tkachov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240726163254.1174686-1-claudio.bantaloukas@arm.com \
    --to=claudio.bantaloukas@arm.com \
    --cc=gcc-patches@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).