On Thu, Jun 04, 2015 at 09:27:25AM +0100, Richard Earnshaw wrote: > On 03/06/15 20:44, James Greenhalgh wrote: > > On Wed, Jun 03, 2015 at 08:28:12PM +0100, Sandra Loosemore wrote: > >> On 06/03/2015 12:05 PM, James Greenhalgh wrote: > >>> Basically the problem occurs when a target which is not OK for Neon > >>> runs before another target. The dg-do-what-default is not restored > >>> when ![check_effective_target_arm_neon_ok]. More details inline... > >>> > >> I have a mild preference for instead not setting dg-do-what-default > >> until we've gotten past the early return, something like the attached > >> patch. That's completely untested -- I've temporarily swapped out all > >> my ARM state and am bogged down with a nios2 gdb problem right now, so > >> if you can take it from here I'd appreciate that. > > > > This looks sensible to me, fixes the issue, and didn't seem to cause > > any other issues in my test runs just now. I'd be happy to see this > > go in under the obvious rule - but that is your call... > > > > Otherwise, I'm not sure where maintainership stands on these shared files, > > but if an OK from the AArch64 side is enough for you, feel free to > > commit it. > > > > I trust that you'll act sensibly and when in doubt, ask ... Understood.
In which case, I've applied the following on your behalf as revision 224119. Thanks, James --- 2015-06-04 Sandra Loosemore <san...@codesourcery.com> * gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp: Move set of dg-do-what-default after early return. Index: gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp =================================================================== --- gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp (revision 224118) +++ gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp (working copy) @@ -33,7 +33,6 @@ # The default action for a test is 'run'. Save current default. global dg-do-what-default set save-dg-do-what-default ${dg-do-what-default} -set dg-do-what-default run # For ARM, make sure that we have a target compatible with NEON, and do # not attempt to run execution tests if the hardware doesn't support it. @@ -43,7 +42,11 @@ } if {![is-effective-target arm_neon_hw]} then { set dg-do-what-default compile + } else { + set dg-do-what-default run } +} else { + set dg-do-what-default run } set-torture-options $C_TORTURE_OPTIONS {{}} $LTO_TORTURE_OPTIONS