public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
       [not found] <bug-44691-4@http.gcc.gnu.org/bugzilla/>
@ 2010-11-12 12:01 ` amonakov at gcc dot gnu.org
  2010-11-12 15:58 ` amonakov at gcc dot gnu.org
  1 sibling, 0 replies; 10+ messages in thread
From: amonakov at gcc dot gnu.org @ 2010-11-12 12:01 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Alexander Monakov <amonakov at gcc dot gnu.org> 2010-11-12 11:58:25 UTC ---
*** Bug 46441 has been marked as a duplicate of this bug. ***


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
       [not found] <bug-44691-4@http.gcc.gnu.org/bugzilla/>
  2010-11-12 12:01 ` [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050 amonakov at gcc dot gnu.org
@ 2010-11-12 15:58 ` amonakov at gcc dot gnu.org
  1 sibling, 0 replies; 10+ messages in thread
From: amonakov at gcc dot gnu.org @ 2010-11-12 15:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Alexander Monakov <amonakov at gcc dot gnu.org> 2010-11-12 15:47:46 UTC ---
Author: amonakov
Date: Fri Nov 12 15:47:38 2010
New Revision: 166653

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=166653
Log:
    Backport from mainline:
    2010-08-19  Andrey Belevantsev  <abel@ispras.ru>

    PR rtl-optimization/44691
    * sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
    is not a register.

    * gfortran.dg/pr44691.f: New test.


Added:
    branches/gcc-4_5-branch/gcc/testsuite/gfortran.dg/pr44691.f
Modified:
    branches/gcc-4_5-branch/gcc/ChangeLog
    branches/gcc-4_5-branch/gcc/sel-sched.c
    branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
                   ` (6 preceding siblings ...)
  2010-08-20  8:08 ` abel at gcc dot gnu dot org
@ 2010-08-24  9:12 ` abel at gcc dot gnu dot org
  7 siblings, 0 replies; 10+ messages in thread
From: abel at gcc dot gnu dot org @ 2010-08-24  9:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from abel at gcc dot gnu dot org  2010-08-24 09:12 -------
Subject: Bug 44691

Author: abel
Date: Tue Aug 24 09:11:48 2010
New Revision: 163516

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163516
Log:
Backport from mainline:
        PR rtl-optimization/44691
        * sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
        is not a register.

        * gfortran.dg/pr44691.f: New test.


Added:
    branches/gcc-4_4-branch/gcc/testsuite/gfortran.dg/pr44691.f
Modified:
    branches/gcc-4_4-branch/gcc/ChangeLog
    branches/gcc-4_4-branch/gcc/sel-sched.c
    branches/gcc-4_4-branch/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
                   ` (5 preceding siblings ...)
  2010-08-19 10:04 ` abel at gcc dot gnu dot org
@ 2010-08-20  8:08 ` abel at gcc dot gnu dot org
  2010-08-24  9:12 ` abel at gcc dot gnu dot org
  7 siblings, 0 replies; 10+ messages in thread
From: abel at gcc dot gnu dot org @ 2010-08-20  8:08 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from abel at gcc dot gnu dot org  2010-08-20 08:07 -------
Subject: Bug 44691

Author: abel
Date: Fri Aug 20 08:07:17 2010
New Revision: 163396

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163396
Log:
        PR rtl-optimization/44691
        * gfortran.dg/pr44691.f: New test.


Added:
    trunk/gcc/testsuite/gfortran.dg/pr44691.f
Modified:
    trunk/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
                   ` (4 preceding siblings ...)
  2010-08-19 10:04 ` abel at gcc dot gnu dot org
@ 2010-08-19 10:04 ` abel at gcc dot gnu dot org
  2010-08-20  8:08 ` abel at gcc dot gnu dot org
  2010-08-24  9:12 ` abel at gcc dot gnu dot org
  7 siblings, 0 replies; 10+ messages in thread
From: abel at gcc dot gnu dot org @ 2010-08-19 10:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from abel at gcc dot gnu dot org  2010-08-19 10:04 -------
Subject: Bug 44691

Author: abel
Date: Thu Aug 19 10:03:39 2010
New Revision: 163369

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163369
Log:
        PR rtl-optimization/44691
        * sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
        is not a register. 

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


-- 


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


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
                   ` (3 preceding siblings ...)
  2010-07-23 12:06 ` rguenth at gcc dot gnu dot org
@ 2010-08-19 10:04 ` abel at gcc dot gnu dot org
  2010-08-19 10:04 ` abel at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: abel at gcc dot gnu dot org @ 2010-08-19 10:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from abel at gcc dot gnu dot org  2010-08-19 10:04 -------
Fixed by 163369.


-- 

abel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


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


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
                   ` (2 preceding siblings ...)
  2010-06-30  8:49 ` abel at gcc dot gnu dot org
@ 2010-07-23 12:06 ` rguenth at gcc dot gnu dot org
  2010-08-19 10:04 ` abel at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-23 12:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from rguenth at gcc dot gnu dot org  2010-07-23 12:05 -------
Ping?


-- 


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


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
  2010-06-28  9:01 ` [Bug rtl-optimization/44691] " rguenth at gcc dot gnu dot org
  2010-06-28 15:07 ` abel at gcc dot gnu dot org
@ 2010-06-30  8:49 ` abel at gcc dot gnu dot org
  2010-07-23 12:06 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: abel at gcc dot gnu dot org @ 2010-06-30  8:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from abel at gcc dot gnu dot org  2010-06-30 08:49 -------
The below patch fixes the problem for me.

diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c
index 8590b8a..15c4e51 100644
--- a/gcc/sel-sched.c
+++ b/gcc/sel-sched.c
@@ -837,7 +837,8 @@ count_occurrences_1 (rtx *cur_rtx, void *arg)

   if (GET_CODE (*cur_rtx) == SUBREG
       && REG_P (p->x)
-      && REGNO (SUBREG_REG (*cur_rtx)) == REGNO (p->x))
+      && (!REG_P (SUBREG_REG (*cur_rtx))
+         || REGNO (SUBREG_REG (*cur_rtx)) == REGNO (p->x)))
     {
       /* ??? Do not support substituting regs inside subregs.  In that case,
          simplify_subreg will be called by validate_replace_rtx, and


-- 


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


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
  2010-06-28  9:01 ` [Bug rtl-optimization/44691] " rguenth at gcc dot gnu dot org
@ 2010-06-28 15:07 ` abel at gcc dot gnu dot org
  2010-06-30  8:49 ` abel at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: abel at gcc dot gnu dot org @ 2010-06-28 15:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from abel at gcc dot gnu dot org  2010-06-28 15:07 -------
Confirmed.  This is because we see an insn

(set (reg:SI 1 dx [237])
    (subreg:SI (plus:DI (reg:DI 2 cx [orig:135 imaj ] [135])
            (const_int -1 [0xffffffffffffffff])) 0))

generated by the recently added split for lea.  I thought the scheduler would
see only a reg as the first operand of a subreg, thus we hit an ICE when we
assume that SUBREG_REG is actually a REG.  This however seems to be legal as
several backends use fancy subreg expressions.  I will recheck and then will
fix this.


-- 

abel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|abel at ispras dot ru       |abel at gcc dot gnu dot org
         AssignedTo|unassigned at gcc dot gnu   |abel at gcc dot gnu dot org
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-06-28 15:07:28
               date|                            |


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


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

* [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050
  2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
@ 2010-06-28  9:01 ` rguenth at gcc dot gnu dot org
  2010-06-28 15:07 ` abel at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-06-28  9:01 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.6.0


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


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

end of thread, other threads:[~2010-11-12 15:58 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-44691-4@http.gcc.gnu.org/bugzilla/>
2010-11-12 12:01 ` [Bug rtl-optimization/44691] [4.6 Regression] ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050 amonakov at gcc dot gnu.org
2010-11-12 15:58 ` amonakov at gcc dot gnu.org
2010-06-27 14:54 [Bug rtl-optimization/44691] New: " zsojka at seznam dot cz
2010-06-28  9:01 ` [Bug rtl-optimization/44691] " rguenth at gcc dot gnu dot org
2010-06-28 15:07 ` abel at gcc dot gnu dot org
2010-06-30  8:49 ` abel at gcc dot gnu dot org
2010-07-23 12:06 ` rguenth at gcc dot gnu dot org
2010-08-19 10:04 ` abel at gcc dot gnu dot org
2010-08-19 10:04 ` abel at gcc dot gnu dot org
2010-08-20  8:08 ` abel at gcc dot gnu dot org
2010-08-24  9:12 ` abel at gcc dot gnu dot 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).