On 05/01/16 10:52, Richard Earnshaw (lists) wrote:
On 05/01/16 10:47, Kyrill Tkachov wrote:
Hi Thomas,

On 05/01/16 07:37, Thomas Preud'homme wrote:
Hi,

g++.dg/pr67989.C passes -march=armv4t to gcc when compiling which
fails if
RUNTESTFLAGS passes -mcpu or -march with a different value. This patch
adds a
dg-skip-if directive to skip the test when such a thing happens.

ChangeLog entry is as follows:


*** gcc/testsuite/ChangeLog ***

2015-12-31  Thomas Preud'homme  <thomas.preudho...@arm.com>

          * g++.dg/pr67989.C: Skip test if already running it with
-mcpu or
          -march with different value.


diff --git a/gcc/testsuite/g++.dg/pr67989.C
b/gcc/testsuite/g++.dg/pr67989.C
index
90261c450b4b9429fb989f7df62f3743017c7363..61be8e172a96df5bb76f7ecd8543dadf825e7dc7

100644
--- a/gcc/testsuite/g++.dg/pr67989.C
+++ b/gcc/testsuite/g++.dg/pr67989.C
@@ -1,5 +1,6 @@
   /* { dg-do compile } */
   /* { dg-options "-std=c++11 -O2" } */
+/* { dg-skip-if "do not override -mcpu" { arm*-*-* } { "-march=*"
"-mcpu=*" }
{ "-march=armv4t" } } */
   /* { dg-additional-options "-marm -march=armv4t" { target arm*-*-* }
} */
How about we try to do it using the add_options_for_arm_arch_v4t machinery
and the arm_arch_v4t_ok check?

I think the -marm part can go and can be added implicitly as part of
multilib testing

Or we could drop all the target-specific options as this is supposed to
be a generic test.  Yes, I realise this was the particular flag
combination required to trigger the original ICE, but no other target
running this test has target-specific options, so it seams a little
strange that ARM does.

IIRC the problem in this PR was a fallback path in one of the
atomic operation expand routines, so it needs an architecture version
that is sufficiently low to not use the target-specific expanders.
That's why the armv4t was there.

Kyrill

R.


Thanks,
Kyrill


   __extension__ typedef unsigned long long int uint64_t;


Is this ok for stage3?

Best regards,

Thomas


Reply via email to