On 02/08/2016 10:02 AM, Jeff Law wrote:


After this patch I also see:
FAIL: gcc.dg/tree-ssa/split-path-1.c scan-tree-dump split-paths
"Duplicating join block"

on arm, but not on aarch64. My arm-none-eabi cross compiler is
configured with:
--with-float=hard --with-cpu=cortex-a9 --with-fpu=neon --with-mode=thumb
Thanks.  That configuration just has more statements in the join block
and bumps up against the limit.

I'll probably just manually increase the limit for the test.
So just for the record, for the configuration above, we generate more statements in the join block than for the x86_64 and aarch64 targets. This appears to be due to differences in addressing modes and IVopts selections.

Prior to my change for 68541, there was no limit on the number of statements we were allowed to copy, so it "just worked", even with the additional statements. After the change to 68541 we hit the newly added upper limit for some configurations.

For the purposes of the test I have bumped the upper limit on how many statements it will copy from the join block and verified by hand the path is split as expected for the configuration noted above and verified that the x86-64 testresults are unaffected.

Thanks,
Jeff

commit 63b766bdef44518d33a21569a089fca2356d6ffe
Author: Jeff Law <l...@redhat.com>
Date:   Mon Feb 8 12:52:21 2016 -0700

        PR tree-optimization/68541
        * gcc.dg/tree-ssa/split-path-1.c: Increase limit for number
        of statements allowed in join block for path splitting.

diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 64f512d..9f629d6 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2016-02-08  Jeff Law  <l...@redhat.com>
+
+       PR tree-optimization/68541
+       * gcc.dg/tree-ssa/split-path-1.c: Increase limit for number
+       of statements allowed in join block for path splitting.
+
 2016-02-08  Jakub Jelinek  <ja...@redhat.com>
 
        PR c++/59627
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/split-path-1.c 
b/gcc/testsuite/gcc.dg/tree-ssa/split-path-1.c
index b24f6a9..8b23ef4 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/split-path-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/split-path-1.c
@@ -1,5 +1,5 @@
 /* { dg-do run } */
-/* { dg-options "-O2 -fsplit-paths -fdump-tree-split-paths-details " } */
+/* { dg-options "-O2 -fsplit-paths -fdump-tree-split-paths-details --param 
max-jump-thread-duplication-stmts=20" } */
 
 #include <stdio.h>
 #include <stdlib.h>

Reply via email to