public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "marxin at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/96015] [10/11 Regression] gcc-10.1.0 miscompiles Python on hppa
Date: Thu, 02 Jul 2020 07:58:58 +0000	[thread overview]
Message-ID: <bug-96015-4-lbjhsungBQ@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-96015-4@http.gcc.gnu.org/bugzilla/>

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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2020-07-02

--- Comment #17 from Martin Liška <marxin at gcc dot gnu.org> ---
Well, I'm looking at the optimized tree dump for hppa and seems fine to me:

__attribute__((noipa, noinline, noclone, no_icf))
long_richcompare (int * self, int * other, int op)
{
  int _1;
  int _2;
  int _5;
  int prephitmp_6;

  <bb 2> [local count: 1073741823]:
  _1 = yes ();
  if (_1 == 0)
    goto <bb 9>; [51.12%]
  else
    goto <bb 3>; [48.88%]

  <bb 3> [local count: 524844999]:
  _2 = yes ();
  if (_2 == 0)
    goto <bb 9>; [34.00%]
  else
    goto <bb 4>; [66.00%]

  <bb 4> [local count: 346397698]:
  if (self_11(D) == other_12(D))
    goto <bb 5>; [30.00%]
  else
    goto <bb 11>; [70.00%]

  <bb 5> [local count: 103919309]:
  switch (op_14(D)) <default: <L12> [33.33%], case 0: <L6> [16.67%], case 1:
<L14> [33.33%], case 3: <L14> [33.33%], case 5: <L34> [16.67%]>

  <bb 6> [local count: 17319885]:
<L34>:
  goto <bb 10>; [100.00%]

  <bb 7> [local count: 115465900]:
  # prephitmp_6 = PHI <1(5), op_14(D)(11)>
<L6>:
  goto <bb 10>; [100.00%]

  <bb 8> [count: 0]:
<L12>:
  __builtin_unreachable ();

  <bb 9> [local count: 727344125]:

  <bb 10> [local count: 1073741824]:
  # _5 = PHI <1(6), prephitmp_6(7), 0(9), 0(5), 0(11)>
<L14>:
  return _5;

  <bb 11> [local count: 242478389]:
  switch (op_14(D)) <default: <L12> [33.33%], case 0: <L6> [16.67%], case 1:
<L14> [50.00%], case 3: <L14> [50.00%], case 5: <L14> [50.00%]>

}

we go to bb_2, then as yes() == 0 is false, to bb_3 and bb_4.
In bb_4 we jump to bb_11, from which we go to L6 (aka bb_7).
# prephitmp_6 = PHI <1(5), op_14(D)(11)>

here we set prephitmp_6 = op_14 = 0;
go to bb_10, here _5 = prephitmp_6 = 0;
return _5. So the function properly returns 0.

For me tree optimized dump is correct, so likely a target issue.

@Sergei: Is GCC 9 working properly?
Would it be possible to bisect that?

  parent reply	other threads:[~2020-07-02  7:58 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-01  7:29 [Bug target/96015] New: [regression] " slyfox at inbox dot ru
2020-07-01  7:30 ` [Bug target/96015] " slyfox at inbox dot ru
2020-07-01  7:32 ` slyfox at inbox dot ru
2020-07-01  7:38 ` slyfox at inbox dot ru
2020-07-01  8:03 ` [Bug target/96015] [10/11 Regression] " rguenth at gcc dot gnu.org
2020-07-01  8:11 ` marxin at gcc dot gnu.org
2020-07-01  9:14 ` slyfox at inbox dot ru
2020-07-01  9:15 ` slyfox at inbox dot ru
2020-07-01 13:11 ` marxin at gcc dot gnu.org
2020-07-01 13:12 ` marxin at gcc dot gnu.org
2020-07-01 15:39 ` slyfox at inbox dot ru
2020-07-01 15:40 ` slyfox at inbox dot ru
2020-07-01 15:46 ` slyfox at inbox dot ru
2020-07-01 16:35 ` law at redhat dot com
2020-07-01 17:33 ` law at redhat dot com
2020-07-01 17:57 ` slyfox at inbox dot ru
2020-07-01 19:15 ` slyfox at inbox dot ru
2020-07-02  6:58 ` slyfox at inbox dot ru
2020-07-02  7:58 ` marxin at gcc dot gnu.org [this message]
2020-07-02  9:34 ` ebotcazou at gcc dot gnu.org
2020-07-02 17:15 ` slyfox at inbox dot ru
2020-07-02 17:15 ` slyfox at inbox dot ru
2020-07-02 17:16 ` slyfox at inbox dot ru
2020-07-02 20:21 ` slyfox at inbox dot ru
2020-07-02 20:50 ` slyfox at inbox dot ru
2020-07-02 21:35 ` slyfox at inbox dot ru
2020-07-02 22:36 ` slyfox at inbox dot ru
2020-07-02 23:16 ` [Bug rtl-optimization/96015] " ebotcazou at gcc dot gnu.org
2020-07-03  7:19 ` slyfox at inbox dot ru
2020-07-03  7:45 ` marxin at gcc dot gnu.org
2020-07-03  8:23 ` ebotcazou at gcc dot gnu.org
2020-07-03  9:23 ` ebotcazou at gcc dot gnu.org
2020-07-03 17:24 ` slyfox at inbox dot ru
2020-07-03 19:29 ` ebotcazou at gcc dot gnu.org
2020-07-06 20:31 ` law at redhat dot com
2020-07-07  8:09 ` ebotcazou at gcc dot gnu.org
2020-07-08 17:01 ` law at redhat dot com
2020-07-23  6:51 ` rguenth at gcc dot gnu.org
2021-01-14  9:04 ` rguenth at gcc dot gnu.org
2021-01-14 16:33 ` law at redhat dot com
2021-01-14 19:14 ` mikpelinux at gmail dot com
2021-01-15 16:54 ` ebotcazou at gcc dot gnu.org
2021-02-09 18:56 ` cvs-commit at gcc dot gnu.org
2021-02-09 18:59 ` cvs-commit at gcc dot gnu.org
2021-02-09 19:01 ` ebotcazou at gcc dot gnu.org
2021-02-09 20:21 ` dave.anglin at bell dot net

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-96015-4-lbjhsungBQ@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).