This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH][ARM][testsuite] Fix testsuite options for testing rounding vectorisation on ARMv8
- From: Ramana Radhakrishnan <ramrad01 at arm dot com>
- To: Kyrylo Tkachov <Kyrylo dot Tkachov at arm dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "mikestump at comcast dot net" <mikestump at comcast dot net>
- Date: Fri, 05 Apr 2013 16:52:50 +0100
- Subject: Re: [PATCH][ARM][testsuite] Fix testsuite options for testing rounding vectorisation on ARMv8
- References: <01b101ce31fe$62857250$279056f0$ at firstname.lastname@example.org> <515EDA2A dot 5070308 at arm dot com> <01b501ce320c$04825610$0d870230$ at email@example.com>
On 04/05/13 15:44, Kyrylo Tkachov wrote:
- -----Original Message-----
From: Ramana Radhakrishnan
Sent: 05 April 2013 15:06
To: Kyrylo Tkachov
Cc: firstname.lastname@example.org; email@example.com
Subject: Re: [PATCH][ARM][testsuite] Fix testsuite options for testing
rounding vectorisation on ARMv8
On 04/05/13 14:06, Kyrylo Tkachov wrote:
With r197491 I added testsuite support for vectorisation of rounding
functions on ARMv8 NEON, but the options set up
for vect.exp results in the testsuite trying to test all the vect
ARMv8 NEON which does not work on
ARMv7 targets and simulators that don't support ARMv8 (like qemu).
But if we run the tests using v7 NEON, the newly enabled vect-
tests will FAIL because they need ARMv8 NEON options.
Therefore this patch reverts most of that and instead copies the
vectorisation tests to gcc.target/arm
where the correct options can be set.
Tested arm-none-eabi on qemu to make sure that the execution tests
and use v7 NEON
Ok for trunk?
Ok by me but I'd like Mike to have another look.
It's a bit unfortunate we need to copy these tests over for the
architecture levels we need - there is a good project to restructure
gcc.target/arm to test properly at different arch. levels but for the
minute this is the best compromise.
While differentiating between architecture levels in the gcc.target/arm is a
I think in this case the problem is that when testing gcc.dg/vect/ we use
check_vect_support_and_set_flags to set a common set of flags for all the
tests in that directory.
But when for the same target (i.e. arm-none-eabi, which could be ARMv7 or
different FPU options provide different vectorisation capabilities things
gets messy when we want
to test something that one FPU supports and another doesn't. Since the
vect.exp tests are common
we cannot add arm-specific FPU options there.
Yeah ok then.
2013-04-05 Kyrylo Tkachov <firstname.lastname@example.org>
* lib/target-supports.exp (add_options_for_arm_v8_neon):
Add -march=armv8-a when we use v8 NEON.
(check_effective_target_vect_call_btruncf): Remove arm-*-*-*.
(check_vect_support_and_set_flags): Remove check for arm_v8_neon.
* gcc.target/arm/vect-rounding-btruncf.c: New testcase.
* gcc.target/arm/vect-rounding-ceilf.c: Likewise.
* gcc.target/arm/vect-rounding-floorf.c: Likewise.
* gcc.target/arm/vect-rounding-roundf.c: Likewise.