Commit a84aff58 by Kyrylo Tkachov Committed by Kyrylo Tkachov

[testsuite] Fix arm options in gcc.dg/lto/20110201-1_0.c

This test fails on arm hardfloat targets because it sets an explicit -mfloat-abi=softfp.
The usual approach to setting the NEON options is to use dg-add-options arm_neon.
But in the lto tests we don't have that framework, we can only set them explicitly with dg-lto-options.

The solution is to remove the explicit -mfloat-abi=softfp and instead add an effective target check
for arm_neon_ok_no_float_abi that makes sure we only run this test if -mfpu=neon is enough to get NEON
without any -mfloat-abi options. In fact, this is what the comment above check_effective_target_arm_neon_ok_no_float_abi_nocache
recommends for lto tests.

That way on my hardfloat toolchain the test doesn't try to link the softfp binary against a hard-float runtime/test glue
and all is good. I've tested that the test is appropriately skipped when testing a --with-float=soft toolchain.


     * gcc.dg/lto/20110201-1_0.c: Remove explicit -mfloat-abi=softfp
     option.  Add arm_neon_ok_no_float_abi check.

From-SVN: r257017
parent 3dede32b
2018-01-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.dg/lto/20110201-1_0.c: Remove explicit -mfloat-abi=softfp
option. Add arm_neon_ok_no_float_abi check.
2018-01-24 Richard Biener <rguenther@suse.de>
PR tree-optimization/83176
......
/* { dg-lto-do run } */
/* { dg-lto-options { { -O0 -flto -fno-math-errno } } } */
/* { dg-lto-options { "-O0 -flto -fno-math-errno -mfloat-abi=softfp -mfpu=neon-vfpv4" } { target arm*-*-* } } */
/* { dg-lto-options { "-O0 -flto -fno-math-errno -mfpu=neon-vfpv4" } { target arm*-*-* } } */
/* { dg-require-effective-target arm_neon_ok_no_float_abi { target arm*-*-* } } */
/* { dg-require-linker-plugin "" } */
/* { dg-require-effective-target sqrt_insn } */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment