[Bug target/95018] [10/11 Regression] Excessive unrolling for Fortran library array handling
tkoenig at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed May 13 07:54:08 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95018
--- Comment #29 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
It is also interesting that this variant
--- a/libgfortran/generated/in_pack_i4.c
+++ b/libgfortran/generated/in_pack_i4.c
@@ -88,7 +88,7 @@ internal_pack_4 (gfc_array_i4 * source)
count[0]++;
/* Advance to the next source element. */
index_type n = 0;
- while (count[n] == extent[n])
+ while (n < dim && count[n] == extent[n])
{
/* When we get to the end of a dimension, reset it and increment
the next dimension. */
@@ -100,7 +100,6 @@ internal_pack_4 (gfc_array_i4 * source)
if (n == dim)
{
src = NULL;
- break;
}
else
{
does not get peeled.
More information about the Gcc-bugs
mailing list