From: Andrew Carlotti <andrew.carlotti@arm.com>
To: "Richard Earnshaw (lists)" <Richard.Earnshaw@arm.com>
Cc: binutils@sourceware.org
Subject: Re: [PATCH] aarch64: Enable +cssc for armv8.9-a
Date: Mon, 20 May 2024 16:00:57 +0100 [thread overview]
Message-ID: <1c72000a-c123-1df0-1f90-0b41ad659bc7@e124511.cambridge.arm.com> (raw)
In-Reply-To: <6dbcfc93-13dc-428f-8273-c696555099cc@arm.com>
On Mon, May 20, 2024 at 03:03:46PM +0100, Richard Earnshaw (lists) wrote:
> On 13/05/2024 15:01, Andrew Carlotti wrote:
> > FEAT_CSSC is mandatory in the architecture from Armv8.9.
> >
> > ---
> >
> > OK for master and backport to 2.42 branch?
>
> The Arm ARM says that CSSC is only mandatory if AdvSIMD is present. So I think we need a test that this is
> removed if we have -march=armv8.9-a+nosimd.
>
> R.
FEAT_CSSC does not depend upon FEAT_AdvSIMD, so `+cssc` does not enable
`+simd`, and conversely `+nosimd` does not disable `+cssc`.
Our `-march=armv8.x` flags are based upon which features are mandatory in an
Armv8.x system with FEAT_AdvSIMD present, but are subsequently treated as
equivalent to having specified these features as a set of independent feature
flags. `+nosimd` will disable anything that explicitly depends on
FEAT_AdvSIMD, but does not disable any additional features that were included
in the base architecture, even if they were only included in the base
architecture as a consquence of the assumed presence of FEAT_AdvSIMD.
Incidentally, our `march=armv9.y` flags are similarly based upon which features
are mandatory in an Armv9.y system with FEAT_SVE2 present.
> >
> >
> > diff --git a/gas/testsuite/gas/aarch64/cssc.d b/gas/testsuite/gas/aarch64/cssc.d
> > index d41df24b916d26b0c71ad0435f3e83090268e4e7..f6ff9d207a2fd876793ac3769e87b524201d8cbb 100644
> > --- a/gas/testsuite/gas/aarch64/cssc.d
> > +++ b/gas/testsuite/gas/aarch64/cssc.d
> > @@ -1,5 +1,6 @@
> > #name: CSSC extension
> > #as: -march=armv8-a+cssc
> > +#as: -march=armv8.9-a
> > #objdump: -dr
> >
> > .*: file format .*
> > diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h
> > index 2fca9528c2012be983c2414a30fa5930e57e5c92..2d327e830497945cd691754176e4130e30ede492 100644
> > --- a/include/opcode/aarch64.h
> > +++ b/include/opcode/aarch64.h
> > @@ -291,6 +291,7 @@ enum aarch64_feature_bit {
> > | AARCH64_FEATBIT (X, MOPS) \
> > | AARCH64_FEATBIT (X, HBC))
> > #define AARCH64_ARCH_V8_9A_FEATURES(X) (AARCH64_FEATBIT (X, V8_9A) \
> > + | AARCH64_FEATBIT (X, CSSC) \
> > | AARCH64_FEATBIT (X, SPEv1p4) \
> > | AARCH64_FEATBIT (X, SPE_CRR) \
> > | AARCH64_FEATBIT (X, SPE_FDS) \
>
next prev parent reply other threads:[~2024-05-20 15:01 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-13 14:01 Andrew Carlotti
2024-05-20 14:03 ` Richard Earnshaw (lists)
2024-05-20 15:00 ` Andrew Carlotti [this message]
2024-05-28 15:15 ` Nick Clifton
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=1c72000a-c123-1df0-1f90-0b41ad659bc7@e124511.cambridge.arm.com \
--to=andrew.carlotti@arm.com \
--cc=Richard.Earnshaw@arm.com \
--cc=binutils@sourceware.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).