On 2014-05-23, 11:45 AM, Jakub Jelinek wrote:
On Fri, May 23, 2014 at 11:36:33AM -0400, Vladimir Makarov wrote:
The following patch adds missed test for the PR.
Committed to the trunk as rev. 210838.
2014-05-23 Vladimir Makarov <vmaka...@redhat.com>
PR rtl-optimization/61215
* gcc.target/i386/pr61215.c: New.
Index: testsuite/gcc.target/i386/pr61215.c
===================================================================
--- testsuite/gcc.target/i386/pr61215.c (revision 0)
+++ testsuite/gcc.target/i386/pr61215.c (working copy)
@@ -0,0 +1,10 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target ia32 } */
+/* { dg-options "-O2 -march=i686" } */
+
+void fn1 (int *, ...);
+int fn2 (int p1)
+{
+ fn1 (0, (short)(int)&p1);
+ return 0;
+}
What is i?86 specific on this testcase?
I'd say move it to gcc.dg/, remove effective-target,
/* { dg-options "-O2" } */
/* { dg-additional-options "-march=i686" { target ia32 } } */
and use (__INTPTR_TYPE__) instead of (int) - no change for i?86.
I believe it is still a machine-dependent test. So many machine
dependent params should coincide to occur the bug. RA is not a
machine-independent optimization as most SSA ones. No way the bug will
occur on other target for this test.
Running the test for all target is just wasting machine cycles. The
running all GCC tests on some slow targets are a real problem. Waiting
the test results might take a day. So I don't want to make this problem
worse.