public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
@ 2014-02-21  7:43 ` abel at gcc dot gnu.org
  2014-02-21  9:27 ` abel at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-21  7:43 UTC (permalink / raw)
  To: gcc-bugs

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

Andrey Belevantsev <abel at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2014-02-21
           Assignee|unassigned at gcc dot gnu.org      |abel at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Andrey Belevantsev <abel at gcc dot gnu.org> ---
Confirmed, I'm at it.


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

* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
  2014-02-21  7:43 ` [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0 abel at gcc dot gnu.org
@ 2014-02-21  9:27 ` abel at gcc dot gnu.org
  2014-02-21 10:51 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-21  9:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Andrey Belevantsev <abel at gcc dot gnu.org> ---
Here the assert added while fixing PR 57422 means that we should always be able
to schedule the current fence instruction.  The PR 57422 analysis was good but
for the added assert we should make one more conclusion from it.  In that PR
case, we did the following: 1) reset the fence insn target register
availability because this insn form was scheduled earlier and the pre-computed
availability might be wrong; 2) then properly recompute the possible registers
for this insn and rename it.

The part 2) had the bug which was fixed.  Now, in this PR we also reset the
availability as in the part 1) and then fail to recompute the possible renaming
registers because of the --param limitation to apply the renaming to the most
important insns.  But we are required to do this for the fence insn always if
we want so satisfy the correctness assert I have inserted for the PR 57422.  So
either we always should try renaming for the fence insn, or, easier, not doing
the part 1) (resetting the precomputed availability for the fence insn) at all.
 The unavailable vinsns business was introduced for the case when we schedule
an insn on some fence with renaming and this can invalidate the availability
bits for this insn on the other fence; for the next (fence) insn it is safe to
skip it.

So the below simple patch fixes the test case.  I have looked through the code
to ensure that no other issues like this should arise and so then further
firings of this assert should uncover real bugs (hopefully).

Also, the --param renaming limitation as the reason of this particular bug is
easily verified, as the test case passes with --param
selsched-insns-to-rename=3 (instead of 2, the default).

Dominique, I don't have a darwin machine, can you help me with testing this
patch on darwin?  I will do the x86-64 and ia64.

diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c
index 490f361..241bdad 100644
--- a/gcc/sel-sched.c
+++ b/gcc/sel-sched.c
@@ -3823,7 +3823,8 @@ fill_vec_av_set (av_set_t av, blist_t bnds, fence_t
fence,

       /* If insn was already scheduled on the current fence,
         set TARGET_AVAILABLE to -1 no matter what expr's attribute says.  */
-      if (vinsn_vec_has_expr_p (vec_target_unavailable_vinsns, expr))
+      if (vinsn_vec_has_expr_p (vec_target_unavailable_vinsns, expr)
+         && !fence_insn_p)
        target_available = -1;

       /* If the availability of the EXPR is invalidated by the insertion of


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

* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
  2014-02-21  7:43 ` [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0 abel at gcc dot gnu.org
  2014-02-21  9:27 ` abel at gcc dot gnu.org
@ 2014-02-21 10:51 ` rguenth at gcc dot gnu.org
  2014-02-21 14:36 ` dominiq at lps dot ens.fr
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-02-21 10:51 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.9.0


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

* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2014-02-21 10:51 ` rguenth at gcc dot gnu.org
@ 2014-02-21 14:36 ` dominiq at lps dot ens.fr
  2014-02-22 11:02 ` dominiq at lps dot ens.fr
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-02-21 14:36 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> Dominique, I don't have a darwin machine, can you help me with testing 
> this patch on darwin?  I will do the x86-64 and ia64.

I am currently bootstrapping with the patch. Results expected for tomorrow.
Then retesting will require ~36h, so probably monday.

Thanks for the quick answer.


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

* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2014-02-21 14:36 ` dominiq at lps dot ens.fr
@ 2014-02-22 11:02 ` dominiq at lps dot ens.fr
  2014-02-24 10:43 ` dominiq at lps dot ens.fr
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-02-22 11:02 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
The ICE is fixed by the patch in comment 2. Regtesting started, results on
Monday.


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

* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2014-02-22 11:02 ` dominiq at lps dot ens.fr
@ 2014-02-24 10:43 ` dominiq at lps dot ens.fr
  2014-02-24 11:28 ` abel at gcc dot gnu.org
  2014-02-25  6:35 ` abel at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-02-24 10:43 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
The PR is fixed by the patch in comment 2 without regression, see
http://gcc.gnu.org/ml/gcc-testresults/2014-02/msg01688.html.

Thanks for the quick fix.


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

* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2014-02-24 10:43 ` dominiq at lps dot ens.fr
@ 2014-02-24 11:28 ` abel at gcc dot gnu.org
  2014-02-25  6:35 ` abel at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-24 11:28 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Andrey Belevantsev <abel at gcc dot gnu.org> ---
(In reply to Dominique d'Humieres from comment #5)
> The PR is fixed by the patch in comment 2 without regression, see
> http://gcc.gnu.org/ml/gcc-testresults/2014-02/msg01688.html.
> 
> Thanks for the quick fix.

Thank you, I will commit the patch then once the ia64 testing will finish.


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

* [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0
       [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2014-02-24 11:28 ` abel at gcc dot gnu.org
@ 2014-02-25  6:35 ` abel at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: abel at gcc dot gnu.org @ 2014-02-25  6:35 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Andrey Belevantsev <abel at gcc dot gnu.org> ---
Author: abel
Date: Tue Feb 25 06:35:09 2014
New Revision: 208109

URL: http://gcc.gnu.org/viewcvs?rev=208109&root=gcc&view=rev
Log:
    PR rtl-optimization/60292
    * sel-sched.c (fill_vec_av_set): Do not reset target availability
    bit fot the fence instruction.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/sel-sched.c


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

end of thread, other threads:[~2014-02-25  6:35 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-60292-4@http.gcc.gnu.org/bugzilla/>
2014-02-21  7:43 ` [Bug middle-end/60292] [4.9 Regression] ICE: in fill_vec_av_set, at sel-sched.c:3863 with -m64 after r206174 on powerpc-apple-darwin9.8.0 abel at gcc dot gnu.org
2014-02-21  9:27 ` abel at gcc dot gnu.org
2014-02-21 10:51 ` rguenth at gcc dot gnu.org
2014-02-21 14:36 ` dominiq at lps dot ens.fr
2014-02-22 11:02 ` dominiq at lps dot ens.fr
2014-02-24 10:43 ` dominiq at lps dot ens.fr
2014-02-24 11:28 ` abel at gcc dot gnu.org
2014-02-25  6:35 ` abel 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).