The OG12 commit
3e8b51d143e openacc: Move pass_oacc_device_lower after pass_graphite
adds a new pass, which also re-invokes some previous passes. This
seems to have the effect that the pass names and, hence, the dump
names have now a tailing number.
In that commit, 'cunrolli' was changed to 'cunrolli1 for some testcases.
This commit does likewise for some more testcases. In particular,
. in scan-tree-dump the tailing '1' is crucial to change UNRESOLVED
to PASS.
. for "-fdisable-tree-cunrolli1" option, it changes FAIL (excess errors)
to PASS
. even without the change, "-fdump-tree-cunrolli{-details,-optimized}"
has PASS, but I believe the tailing 1 ensures that only the first
'cunrolli' dumps.
gcc/testsuite
* g++.dg/ext/unroll-1.C: Change 'cunrolli' to 'cunrolli1' in
dg-options and scan-tree-dump.
* g++.dg/ext/unroll-2.C: Likewise.
* g++.dg/ext/unroll-3.C: Likewise.
* g++.dg/vect/pr36648.cc: Likewise.
* gcc.dg/tree-prof/init-array.c: Likewise.
* gcc.dg/tree-ssa/pr100359.c: Likewise.
* gcc.dg/tree-ssa/pr59597.c: Likewise.
* gcc.dg/unroll-2.c: Likewise.
* gfortran.dg/directive_unroll_1.f90: Likewise.
* gfortran.dg/directive_unroll_4.f90: Likewise.
* gnat.dg/unroll1.adb: Likewise.
* gnat.dg/unroll2.adb: Likewise.
+2022-10-24 Tobias Burnus <tobias@codesourcery.com>
+
+ * g++.dg/ext/unroll-1.C: Change 'cunrolli' to 'cunrolli1' in
+ dg-options and scan-tree-dump.
+ * g++.dg/ext/unroll-2.C: Likewise.
+ * g++.dg/ext/unroll-3.C: Likewise.
+ * g++.dg/vect/pr36648.cc: Likewise.
+ * gcc.dg/tree-prof/init-array.c: Likewise.
+ * gcc.dg/tree-ssa/pr100359.c: Likewise.
+ * gcc.dg/tree-ssa/pr59597.c: Likewise.
+ * gcc.dg/unroll-2.c: Likewise.
+ * gfortran.dg/directive_unroll_1.f90: Likewise.
+ * gfortran.dg/directive_unroll_4.f90: Likewise.
+ * gnat.dg/unroll1.adb: Likewise.
+ * gnat.dg/unroll2.adb: Likewise.
+
2022-10-24 Tobias Burnus <tobias@codesourcery.com>
Backported from master:
// { dg-do compile }
-// { dg-options "-O2 -fdump-tree-cunrolli-details" }
+// { dg-options "-O2 -fdump-tree-cunrolli1-details" }
template <typename T>
void
foo <int> (a, b, c);
}
-// { dg-final { scan-tree-dump "loop with 8 iterations completely unrolled" "cunrolli" } }
+// { dg-final { scan-tree-dump "loop with 8 iterations completely unrolled" "cunrolli1" } }
// { dg-do compile }
-// { dg-options "-O2 -fdump-tree-cunrolli-details" }
+// { dg-options "-O2 -fdump-tree-cunrolli1-details" }
// { dg-skip-if "range for" { *-*-* } { "-std=gnu++98" } { "" } }
void
a[i] = b[i] * c[i];
}
-// { dg-final { scan-tree-dump "loop with 8 iterations completely unrolled" "cunrolli" } }
+// { dg-final { scan-tree-dump "loop with 8 iterations completely unrolled" "cunrolli1" } }
// { dg-do compile }
-// { dg-options "-O2 -fdump-tree-cunrolli-details" }
+// { dg-options "-O2 -fdump-tree-cunrolli1-details" }
// { dg-skip-if "range for" { *-*-* } { "-std=gnu++98" } { "" } }
template <typename T>
foo <int> (a, b, c);
}
-// { dg-final { scan-tree-dump "loop with 8 iterations completely unrolled" "cunrolli" } }
+// { dg-final { scan-tree-dump "loop with 8 iterations completely unrolled" "cunrolli1" } }
/* { dg-do compile } */
/* { dg-require-effective-target vect_float } */
-/* { dg-additional-options "-fdisable-tree-cunrolli" } */
+/* { dg-additional-options "-fdisable-tree-cunrolli1" } */
struct vector
{
-/* { dg-options "-O3 -fdump-tree-cunrolli-details" } */
+/* { dg-options "-O3 -fdump-tree-cunrolli1-details" } */
static int s[10][10][10];
static int d[10][10][10];
}
}
-/* { dg-final-use { scan-tree-dump-times "loop with 10 iterations completely unrolled" 2 "cunrolli"} } */
+/* { dg-final-use { scan-tree-dump-times "loop with 10 iterations completely unrolled" 2 "cunrolli1"} } */
/* { dg-do link } */
-/* { dg-options "-O3 -fdump-tree-cunrolli-optimized" } */
+/* { dg-options "-O3 -fdump-tree-cunrolli1-optimized" } */
extern void foo(void);
static int b, f, *a = &b;
}
/* Verify that we unroll the inner loop early even with -O3. */
-/* { dg-final { scan-tree-dump "loop with 1 iterations completely unrolled" "cunrolli" } } */
-/* { dg-final { scan-tree-dump "loop with 3 iterations completely unrolled" "cunrolli" } } */
+/* { dg-final { scan-tree-dump "loop with 1 iterations completely unrolled" "cunrolli1" } } */
+/* { dg-final { scan-tree-dump "loop with 3 iterations completely unrolled" "cunrolli1" } } */
/* { dg-do compile } */
-/* { dg-options "-Ofast -fdisable-tree-cunrolli -fdump-tree-threadfull1-details" } */
+/* { dg-options "-Ofast -fdisable-tree-cunrolli1 -fdump-tree-threadfull1-details" } */
typedef unsigned short u16;
typedef unsigned char u8;
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-cunrolli-details=stderr -fno-peel-loops -fno-tree-vrp -fdisable-tree-cunroll -fenable-tree-cunrolli1" } */
+/* { dg-options "-O2 -fdump-tree-cunrolli1-details=stderr -fno-peel-loops -fno-tree-vrp -fdisable-tree-cunroll -fenable-tree-cunrolli1" } */
/* Blank lines can occur in the output of
- -fdump-tree-cunrolli-details=stderr. */
+ -fdump-tree-cunrolli1-details=stderr. */
/* { dg-allow-blank-lines-in-output 1 } */
unsigned a[100], b[100];
! { dg-do compile }
-! { dg-options "-O2 -fdump-tree-cunrolli-details -fdump-rtl-loop2_unroll-details" }
+! { dg-options "-O2 -fdump-tree-cunrolli1-details -fdump-rtl-loop2_unroll-details" }
! Test that
! #pragma GCC unroll n
! works
DO i=1, 8, 1
call dummy(a(i))
ENDDO
-! { dg-final { scan-tree-dump "12:.*: loop with 8 iterations completely unrolled" "cunrolli" } } */
+! { dg-final { scan-tree-dump "12:.*: loop with 8 iterations completely unrolled" "cunrolli1" } } */
end subroutine test1
subroutine test2(a, n)
! { dg-do compile }
-! { dg-options "-O2 -funroll-all-loops -fdump-rtl-loop2_unroll-details -fdump-tree-cunrolli-details" }
+! { dg-options "-O2 -funroll-all-loops -fdump-rtl-loop2_unroll-details -fdump-tree-cunrolli1-details" }
! Test that
! #pragma GCC unroll n
! works
ENDDO
end subroutine test2
-! { dg-final { scan-tree-dump "Not unrolling loop .: user didn't want it unrolled completely" "cunrolli" } } */
+! { dg-final { scan-tree-dump "Not unrolling loop .: user didn't want it unrolled completely" "cunrolli1" } } */
! { dg-final { scan-rtl-dump-times "Not unrolling loop, user didn't want it unrolled" 2 "loop2_unroll" } } */
end Unroll1;
--- { dg-final { scan-tree-dump-times "Not unrolling loop .: user didn't want it unrolled completely" 2 "cunrolli" } }
+-- { dg-final { scan-tree-dump-times "Not unrolling loop .: user didn't want it unrolled completely" 2 "cunrolli1" } }
-- { dg-final { scan-rtl-dump-times "Not unrolling loop, user didn't want it unrolled" 2 "loop2_unroll" } }
end Unroll2;
--- { dg-final { scan-tree-dump-times "loop with 3 iterations completely unrolled" 2 "cunrolli" } }
+-- { dg-final { scan-tree-dump-times "loop with 3 iterations completely unrolled" 2 "cunrolli1" } }