This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [3/4] [AArch64] SVE tests
- From: Richard Sandiford <richard dot sandiford at linaro dot org>
- To: James Greenhalgh <james dot greenhalgh at arm dot com>
- Cc: <gcc-patches at gcc dot gnu dot org>, <richard dot earnshaw at arm dot com>, <marcus dot shawcroft at arm dot com>, <nd at arm dot com>
- Date: Sat, 06 Jan 2018 19:13:22 +0000
- Subject: Re: [3/4] [AArch64] SVE tests
- Authentication-results: sourceware.org; auth=none
- References: <87a803ntmg.fsf@linaro.org> <87wp37metd.fsf@linaro.org> <20180106180553.GC15090@arm.com>
James Greenhalgh <james.greenhalgh@arm.com> writes:
> On Fri, Nov 03, 2017 at 05:50:54PM +0000, Richard Sandiford wrote:
>> This patch adds gcc.target/aarch64 tests for SVE, and forces some
>> existing Advanced SIMD tests to use -march=armv8-a.
>
> I'm going to assume that these new testcases are broadly sensible, and not
> spend any significant time looking at them.
>
> I'm not completely happy forcing the architecture to Armv8-a - it would be
> useful for our testing coverage if users which have configured with other
> architecture variants had this test execute in those environments. That
> way we'd check we still do the right thing once we have an implicit
> -march=armv8.2-a .
>
> However, as we don't have a good way to make that happen (other than maybe
> only forcing the arch if we are in a configuration wired for SVE?) I'm
> happy with this patch as a compromise for now.
Would something like LLVM's -mattr be useful? Then we could have
-mattr=+nosve without having to change the base architecture.
I suppose we'd need to be careful about how it interacts with -march
though, so it probably isn't GCC 8 material. I'll try only forcing
the arch when we're compiling for SVE, like you say.
Not strictly related, but do you think it's OK to require binutils 2.28+
when testing GCC (rather than simply building it)? When trying with an
older OS the other day, I realised that the SVE dg-do assemble tests
would fail for 2.27 and earlier. We'd need something like:
/* { dg-do assemble { aarch64_sve_asm } } */
if we wanted to support older binutils.
Thanks,
Richard