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