public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "rguenth at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/109184] [10/11/12/13 Regression] csmith: 2017 bug with -floop-interchange
Date: Mon, 20 Mar 2023 10:58:19 +0000	[thread overview]
Message-ID: <bug-109184-4-PpExBeJr00@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-109184-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109184

--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #6)
> Confirmed with -O2 -floop-interchange.  There's just a single interchange
> done:
> 
> runData/keep/in.713.c:648:32: optimized: loops interchanged in loop nest
> 
> that's in func_2 for the nest
> 
>         for (g_149 = 0; (g_149 > (-15)); g_149--)
>         {
>             for (l_1719 = 4; (l_1719 >= 1); l_1719 -= 1)
>             {
>                 for (l_1721 = 0; (l_1721 >= 0); l_1721 -= 1)
>                 {
>                     struct S1 l_1935 = {0x13186D76L,0xC9L,36,24,1L,0x87L};
>                     for (g_1179 = 0; (g_1179 <= 4); g_1179 += 1)
>                     {
>                         int32_t l_1942 = (-3L);
>                         int32_t *****l_1947 = &l_1946[0][6];
>                         int i, j;
>                         l_1942 ^= ((safe_add_func_uint64_t_u_u((l_1935 ,
> (((l_1936[1] != (void*)0) < (*g_511)) & (g_1731[(l_1719 + 1)][l_1721] &=
> (((0x943C8AB0L | 0xE398A931L) != g_20) , (0x26L &
> (safe_add_func_uint64_t_u_u((--l_1930[g_1179]), 0xFC07342370A5FE25LL))))))),
> 4L)) <= p_5.f0);
>                         l_1943[0][1][1]++;
>                         l_1949 = (((*l_1947) = l_1946[0][6]) == g_1948);
>                     }
>                 }
>             }
>         }

And we are interchanging the outer two loops.  Since the outer loop IV isn't
used in the body it doesn't change anything data dep wise?

Interchanging the loops in the source reproduces the issue, so somehow
for the only use of l_1719

(g_1731[(l_1719 + 1)][l_1721] &= (((0x943C8AB0L | 0xE398A931L) != g_20) ,
(0x26L & (safe_add_func_uint64_t_u_u((--l_1930[g_1179]),
0xFC07342370A5FE25LL)))))

it makes a difference.  It's

  g_1731[(l_1719 + 1)][l_1721] &= val;

the order we & values into it shouldn't matter.  But it's so much obfuscated
code ...

  parent reply	other threads:[~2023-03-20 10:58 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-18 11:21 [Bug c/109184] New: csmith: really old bug with -O3 dcb314 at hotmail dot com
2023-03-18 11:33 ` [Bug c/109184] " dcb314 at hotmail dot com
2023-03-18 12:27 ` dcb314 at hotmail dot com
2023-03-18 12:42 ` dcb314 at hotmail dot com
2023-03-18 15:49 ` [Bug tree-optimization/109184] [10/11/12/13 Regression] " jakub at gcc dot gnu.org
2023-03-20  9:20 ` [Bug tree-optimization/109184] [10/11/12/13 Regression] csmith: 2017 bug with -floop-interchange rguenth at gcc dot gnu.org
2023-03-20 10:34 ` rguenth at gcc dot gnu.org
2023-03-20 10:58 ` rguenth at gcc dot gnu.org [this message]
2023-03-20 12:39 ` rguenth at gcc dot gnu.org
2023-03-20 12:46 ` jakub at gcc dot gnu.org
2023-03-20 12:50 ` rguenth at gcc dot gnu.org
2023-03-20 13:00 ` rguenth at gcc dot gnu.org
2023-03-20 13:09 ` acoplan at gcc dot gnu.org
2023-03-21 12:38 ` rguenth at gcc dot gnu.org
2023-03-27  7:31 ` rguenth at gcc dot gnu.org
2023-07-07 10:45 ` [Bug tree-optimization/109184] [11/12/13/14 " rguenth at gcc dot gnu.org
2023-11-14 12:44 ` rguenth at gcc dot gnu.org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-109184-4-PpExBeJr00@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).