public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/108862] New: [13 Regression] CryptX miscompilation on power9 since r13-2107
@ 2023-02-20 14:20 jakub at gcc dot gnu.org
  2023-02-20 14:20 ` [Bug target/108862] " jakub at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2023-02-20 14:20 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 108862
           Summary: [13 Regression] CryptX miscompilation on power9 since
                    r13-2107
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
  Target Milestone: ---

The following testcase is miscompiled with -O2 -mcpu=power9 since r13-2107 and
is not fixed with r13-5999 fix:

unsigned long long a[2] = { 0x04a13945d898c296ULL, 0x0000100000000fffULL };
unsigned long long b[4] = { 0x04a13945d898c296ULL, 0, 0, 0x0000100000000fffULL
};

__attribute__((noipa)) unsigned __int128
foo (int x, unsigned long long *y, unsigned long long *z)
{
  unsigned __int128 w = 0;
  for (int i = 0; i < x; i++)
    w += (unsigned __int128)*y++ * (unsigned __int128)*z--;
  return w;
}

int
main ()
{
  unsigned __int128 x = foo (1, &a[0], &a[1]);
  unsigned __int128 y = foo (2, &b[0], &b[3]);
  if ((unsigned long long) (x >> 64) != 0x0000004a13945dd3ULL
      || (unsigned long long) x != 0x9b1c8443b3909d6aULL
      || x != y)
    __builtin_abort ();
  return 0;
}

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-02-20 21:12 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-20 14:20 [Bug target/108862] New: [13 Regression] CryptX miscompilation on power9 since r13-2107 jakub at gcc dot gnu.org
2023-02-20 14:20 ` [Bug target/108862] " jakub at gcc dot gnu.org
2023-02-20 14:27 ` jakub at gcc dot gnu.org
2023-02-20 14:36 ` jakub at gcc dot gnu.org
2023-02-20 14:51 ` segher at gcc dot gnu.org
2023-02-20 14:56 ` jakub at gcc dot gnu.org
2023-02-20 15:07 ` jakub at gcc dot gnu.org
2023-02-20 21:08 ` cvs-commit at gcc dot gnu.org
2023-02-20 21:12 ` jakub at gcc dot gnu.org

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).