This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] ARM testsuite: force hardfp for addr-modes-float.c


On 30 November 2017 at 15:56, Kyrill  Tkachov
<kyrylo.tkachov@foss.arm.com> wrote:

>
> So is it the case that you don't run any arm tests that include arm_neon.h
> in your configuration?

No, it is only the case that any arm test which includes arm_neon.h
(in fact, any system header) *and* uses dg-add-options
-mfloat-abi=hard fails on my configuration (And -mfloat-abi=softfp
fails in my configurations which default to hardfp). [1]

The only test which currently has -mfloat-abi=hard and #include
<arm_neon.h> is gcc.target/arm/pr51534.c, and it FAILs in my
arm-unknown-linux-gnueabi configuration.

> If so, then I would be fine with leaving this test unsupported on this
> configuration.

I don't see why, when the test can simply be fixed with
attribute((pcs)), but if you prefer I can respin the patch
accordingly.

> By the way, I notice that in addr-modes-float.c the arm_neon_ok check is
> placed before the dg-add-options.
> I don't remember the arcane rules exactly, but I think the effective target
> check should go before it, so that the test gets skipped properly.

OK, I can respin the patch with that change.

[1] full details as follows:

$ arm-unknown-linux-gnueabi-gcc -v
COLLECT_GCC=/home/cbaylis/tools//tools-arm-unknown-linux-gnueabi-git/bin/arm-unknown-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/home/cbaylis/tools/tools-arm-unknown-linux-gnueabi-git/bin/../libexec/gcc/arm-unknown-linux-gnueabi/8.0.0/lto-wrapper
Target: arm-unknown-linux-gnueabi
Configured with: /home/cbaylis/srcarea/gcc/gcc-git/configure
--prefix=/home/cbaylis/tools//tools-arm-unknown-linux-gnueabi-git
--target=arm-unknown-linux-gnueabi --enable-languages=c,c++
--with-sysroot=/home/cbaylis/tools//sysroot-arm-unknown-linux-gnueabi-git
--with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3-d16
--with-float=softfp --with-mode=thumb
Thread model: posix
gcc version 8.0.0 20171124 (experimental) (GCC)

$ cat tn.c
#include <stdio.h>

$ arm-unknown-linux-gnueabi-gcc -mfloat-abi=hard tn.c
In file included from
/home/cbaylis/tools/sysroot-arm-unknown-linux-gnueabi-git/usr/include/features.h:447,
                 from
/home/cbaylis/tools/sysroot-arm-unknown-linux-gnueabi-git/usr/include/bits/libc-header-start.h:33,
                 from
/home/cbaylis/tools/sysroot-arm-unknown-linux-gnueabi-git/usr/include/stdio.h:27,
                 from tn.c:2:
/home/cbaylis/tools/sysroot-arm-unknown-linux-gnueabi-git/usr/include/gnu/stubs.h:10:11:
fatal error: gnu/stubs-hard.h: Dosiero aŭ dosierujo ne ekzistas
 # include <gnu/stubs-hard.h>
           ^~~~~~~~~~~~~~~~~~
compilation terminated.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]