This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH, GCC/testsuite/ARM] Consistently check for neon in vect effective targets
- From: Thomas Preudhomme <thomas dot preudhomme at foss dot arm dot com>
- To: Christophe Lyon <christophe dot lyon at linaro dot org>
- Cc: Kyrill Tkachov <kyrylo dot tkachov at arm dot com>, Ramana Radhakrishnan <ramana dot radhakrishnan at arm dot com>, Richard Earnshaw <richard dot earnshaw at arm dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 19 Jun 2017 15:11:07 +0100
- Subject: Re: [PATCH, GCC/testsuite/ARM] Consistently check for neon in vect effective targets
- Authentication-results: sourceware.org; auth=none
- References: <email@example.com> <CAKdteOYuw6=p6fx22MUpU8wiFsZaHCFKuUO5ZNptO1k4t6Xf6Q@mail.gmail.com> <firstname.lastname@example.org> <CAKdteObFeXmWpHg8ijpifpBitNeK36SDCW+i7rgkP+R-=yeTFA@mail.gmail.com> <email@example.com>
On 19/06/17 10:16, Thomas Preudhomme wrote:
On 19/06/17 08:41, Christophe Lyon wrote:
On 15 June 2017 at 18:18, Thomas Preudhomme
Conditions checked for ARM targets in vector-related effective targets
* sometimes arm*-*-* is checked
* sometimes Neon is checked
* sometimes arm_neon_ok and sometimes arm_neon is used for neon check
* sometimes check_effective_target_* is used, sometimes is-effective-target
This patch consolidate all of these check into using is-effective-target
arm_neon and when little endian was checked, the check is kept.
ChangeLog entry is as follows:
*** gcc/testsuite/ChangeLog ***
2017-06-06 Thomas Preud'homme <firstname.lastname@example.org>
* lib/target-supports.exp (check_effective_target_vect_int): Replace
current ARM check by ARM NEON's availability check.
Testing: Testsuite shows no regression when targeting ARMv7-A with
-mfpu=neon-fpv4 and -mfloat-abi=hard or when targeting Cortex-M3 with
default FPU and float ABI (soft). Testing was done with both compare_tests
and the updated dg-cmp-results proposed in
Is this ok for trunk?
I applied your patch on top of r249233, and noticed quite a few changes:
Note that "Big-Regression" cases are caused by the fact that there a
are PASS->XPASS and XFAILs disappear with your patch, and many
(3000-4000) PASS disappear.
In that intended?
It certainly is not. I'd like to investigate this but the link to results for
rev 249233 is broken. Could you provide me with the results you have for that so
that I can compare manually?
Actually yes it is, at least for the configurations with default (which still
uses -mfpu=vfp in r249233) or VFP (whatever version) FPU. I've checked all the
->NA and ->UNSUPPORTED for the arm-none-linux-gnueabi configuration and none of
them has a dg directive to select the neon unit (such as dg-additional-options
<something that would add -mfpu on the command line>). I've also looked at
arm-none-linux-gnueabihf configuration with neon FPU and there is no regression
I therefore think this is all normal and expected. Note that under current trunk
this should be different because neon-fp16 would be selected instead of vfp for
default FPU with Cortex-A9.