public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "ebotcazou at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug rtl-optimization/37377] [4.4 Regression] Bootstrap failure compiling libgcc
Date: Sun, 07 Sep 2008 16:02:00 -0000	[thread overview]
Message-ID: <20080907160119.13642.qmail@sourceware.org> (raw)
In-Reply-To: <bug-37377-226@http.gcc.gnu.org/bugzilla/>



------- Comment #10 from ebotcazou at gcc dot gnu dot org  2008-09-07 16:01 -------
The problem is the 4th line in

      Remove r222:a590->a10(mem)
      Remove r69:a566->a389(mem)
      Remove r69:a549->a389(mem)
      Remove r376:a432->a12(mem)
      Remove r220:a148->a9(mem)

(r373 is now r376 on mainline) generated by generate_edge_moves:

        /* Actually it is not a optimization we need this code because
           the memory (remember about equivalent memory) might be ROM
           (or placed in read only section).  */
        if (ALLOCNO_HARD_REGNO (dest_allocno) < 0
            && ALLOCNO_HARD_REGNO (src_allocno) >= 0
            && not_modified_p (src_allocno, dest_allocno))
          {
            ALLOCNO_MEM_OPTIMIZED_DEST (src_allocno) = dest_allocno;
            ALLOCNO_MEM_OPTIMIZED_DEST_P (dest_allocno) = true;
            if (internal_flag_ira_verbose > 3 && ira_dump_file != NULL)
              fprintf (ira_dump_file, "      Remove r%d:a%d->a%d(mem)\n",
                       regno, ALLOCNO_NUM (src_allocno),
                       ALLOCNO_NUM (dest_allocno));
            continue;
          }

Here's the list of allocnos for r376:

579:r376 l20    5  562:r376 l21    5  545:r376 l23    5
  526:r376 l24    5  507:r376 l25    5  460:r376 l22    5  446:r376 l19    5
  432:r376 l8     5  398:r376 l7     5  386:r376 l9   mem  366:r376 l13  mem
  343:r376 l14  mem  320:r376 l16  mem  295:r376 l17  mem  270:r376 l18  mem
  227:r376 l15  mem  213:r376 l12  mem  199:r376 l11  mem  167:r376 l10  mem
   12:r376 l0   mem

The move putting back r376 to its memory location is not generated on a border
of the "5" domain.  This domain contains the 2nd and 3rd insns of comment #4.
Moreover, the live range of a460 is not added to that of a12 during flattening
so r376 is not detected as conflicting with r90 (formerly r85) and r92 (f r87).
In the end, the memory location of r376 is reused within the "5" domain without
being reset at the border.

If I comment out the code quoted above, the compiler bootstraps fine.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37377


  parent reply	other threads:[~2008-09-07 16:02 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-04 20:23 [Bug rtl-optimization/37377] New: " ebotcazou at gcc dot gnu dot org
2008-09-04 20:31 ` [Bug rtl-optimization/37377] " ebotcazou at gcc dot gnu dot org
2008-09-04 20:33 ` ebotcazou at gcc dot gnu dot org
2008-09-04 20:37 ` ebotcazou at gcc dot gnu dot org
2008-09-04 20:47 ` ebotcazou at gcc dot gnu dot org
2008-09-05  4:48 ` hjl dot tools at gmail dot com
2008-09-05  6:25 ` ebotcazou at gcc dot gnu dot org
2008-09-05 13:48 ` hjl dot tools at gmail dot com
2008-09-07 14:00 ` ebotcazou at gcc dot gnu dot org
2008-09-07 15:47 ` ebotcazou at gcc dot gnu dot org
2008-09-07 16:02 ` ebotcazou at gcc dot gnu dot org [this message]
2008-09-08 14:12 ` vmakarov at redhat dot com
2008-09-08 15:27 ` ebotcazou at gcc dot gnu dot org
2008-09-09  0:04 ` hjl at gcc dot gnu dot org
2008-09-12 22:58 ` vmakarov at gcc dot gnu dot org
2008-09-13  8:52 ` ebotcazou at gcc dot gnu dot org
2008-09-18 19:58 ` pinskia at gcc dot gnu dot org
2009-04-11 19:48 ` tkoenig at gcc dot gnu dot 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=20080907160119.13642.qmail@sourceware.org \
    --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).