public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1
@ 2005-09-02 23:32 kkojima at gcc dot gnu dot org
  2005-09-02 23:33 ` [Bug middle-end/23706] " kkojima at gcc dot gnu dot org
                   ` (6 more replies)
  0 siblings, 7 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2005-09-02 23:32 UTC (permalink / raw)
  To: gcc-bugs

sh4-unknown-linux-gnu build fails when compiling libjava/interpret.cc.
with "error: missing REG_EH_REGION note in the end of bb".
I've attached a reduced preprocessed file.

-- 
           Summary: [4.1 Regression] ICE in rtl_verify_flow_info_1
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code, build
          Severity: normal
          Priority: P2
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: kkojima at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: sh4-unknown-linux-gnu


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


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

* [Bug middle-end/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
  2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
@ 2005-09-02 23:33 ` kkojima at gcc dot gnu dot org
  2005-09-03  0:27 ` rth at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2005-09-02 23:33 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From kkojima at gcc dot gnu dot org  2005-09-02 23:33 -------
Created an attachment (id=9655)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9655&action=view)
testcase

cc1plus -fnon-call-exceptions interpret.i


-- 


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


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

* [Bug middle-end/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
  2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
  2005-09-02 23:33 ` [Bug middle-end/23706] " kkojima at gcc dot gnu dot org
@ 2005-09-03  0:27 ` rth at gcc dot gnu dot org
  2005-09-03  0:37 ` pinskia at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-09-03  0:27 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From rth at gcc dot gnu dot org  2005-09-03 00:27 -------
The true problem is in optimize_mode_switching.  The code about line 605
that inserts code around (but not on) abnormal edges, is incorrect.  This
is immediately obvious in this case because the emit_insn_after must by
definition insert insns after the last insn in the block, resulting in
the observed assertion failure.

The solution will have to involve re-organizing optimize_mode_switching
with respect to abnormal edges.

As for why this is suddenly showing up, I can only imagine that the removal
of EH edges (by marking local stack frame slots non-trapping) have changed
the solution LCM finds to the mode switching problem.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rth at gcc dot gnu dot org
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-09-03 00:27:51
               date|                            |


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


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

* [Bug middle-end/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
  2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
  2005-09-02 23:33 ` [Bug middle-end/23706] " kkojima at gcc dot gnu dot org
  2005-09-03  0:27 ` rth at gcc dot gnu dot org
@ 2005-09-03  0:37 ` pinskia at gcc dot gnu dot org
  2005-09-03  0:40 ` kkojima at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-03  0:37 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-09-03 00:36 -------
I am going to reduce this, just for fun.  I am also going to apply the testcase for PR 23676 so it will be 
tested without enabling libjava.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org


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


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

* [Bug middle-end/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
  2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2005-09-03  0:37 ` pinskia at gcc dot gnu dot org
@ 2005-09-03  0:40 ` kkojima at gcc dot gnu dot org
  2005-09-03  3:29 ` [Bug target/23706] " pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2005-09-03  0:40 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From kkojima at gcc dot gnu dot org  2005-09-03 00:40 -------
I'll try the patch.  Thanks.


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
  2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2005-09-03  0:40 ` kkojima at gcc dot gnu dot org
@ 2005-09-03  3:29 ` pinskia at gcc dot gnu dot org
  2005-09-03  7:08 ` kkojima at gcc dot gnu dot org
  2005-09-03  9:20 ` kkojima at gcc dot gnu dot org
  6 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-03  3:29 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-09-03 03:29 -------
Here is the reduced testcase:
void run (void) {
  float stack[1];
  float *sp = stack;
  try
  {
    float value2 = ((float) *(--sp));
    float value1 = ((float) *(--sp));
    *(sp++) = (value1 - value2);
  }
  catch (int *ex)
  {
  }
}


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
  2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2005-09-03  3:29 ` [Bug target/23706] " pinskia at gcc dot gnu dot org
@ 2005-09-03  7:08 ` kkojima at gcc dot gnu dot org
  2005-09-03  9:20 ` kkojima at gcc dot gnu dot org
  6 siblings, 0 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2005-09-03  7:08 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From kkojima at gcc dot gnu dot org  2005-09-03 07:07 -------
There are no new failures on c/c++/objc tests with the patch but
it makes 120 new failures on gfortran execution test.  The patched
compiler still fails for libjava/interpret.cc and Andrew's
reduced testcase.


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
  2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2005-09-03  7:08 ` kkojima at gcc dot gnu dot org
@ 2005-09-03  9:20 ` kkojima at gcc dot gnu dot org
  6 siblings, 0 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2005-09-03  9:20 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From kkojima at gcc dot gnu dot org  2005-09-03 09:20 -------
BTW, I've found that Andrew's testcase fails even on i686-linux with
"-O2 -fnon-call-exceptions":

  internal compiler error: in expand_assignment, at expr.c:3929

I've filed it as PR 23714.


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
                   ` (8 preceding siblings ...)
  2006-03-06 22:40 ` kkojima at gcc dot gnu dot org
@ 2006-03-08  0:12 ` pinskia at gcc dot gnu dot org
  9 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-03-08  0:12 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.1.0                       |4.0.3


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
                   ` (7 preceding siblings ...)
  2005-10-06 17:22 ` pinskia at gcc dot gnu dot org
@ 2006-03-06 22:40 ` kkojima at gcc dot gnu dot org
  2006-03-08  0:12 ` pinskia at gcc dot gnu dot org
  9 siblings, 0 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2006-03-06 22:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from kkojima at gcc dot gnu dot org  2006-03-06 22:40 -------
Subject: Bug 23706

Author: kkojima
Date: Mon Mar  6 22:40:49 2006
New Revision: 111792

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=111792
Log:
        PR target/23706
        Backport from 4.1:
        * lcm.c (optimize_mode_switching): Clear transp bit for
        block with incomming abnormal edges.

        PR target/22553
        Backport from 4.1:
        * config/sh/sh.h (OPTIMIZATION_OPTIONS): Set flag_schedule_insns
        to 2 if it's already non-zero.
        (OVERRIDE_OPTIONS): Clear flag_schedule_insns if flag_exceptions
        is set and warn about it if flag_schedule_insns is 1.


Modified:
    branches/gcc-4_0-branch/gcc/ChangeLog
    branches/gcc-4_0-branch/gcc/config/sh/sh.h
    branches/gcc-4_0-branch/gcc/lcm.c


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2005-10-06 17:17 ` rth at gcc dot gnu dot org
@ 2005-10-06 17:22 ` pinskia at gcc dot gnu dot org
  2006-03-06 22:40 ` kkojima at gcc dot gnu dot org
  2006-03-08  0:12 ` pinskia at gcc dot gnu dot org
  9 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-10-06 17:22 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.1.0


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2005-10-06 17:06 ` cvs-commit at gcc dot gnu dot org
@ 2005-10-06 17:17 ` rth at gcc dot gnu dot org
  2005-10-06 17:22 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 18+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-10-06 17:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from rth at gcc dot gnu dot org  2005-10-06 17:17 -------
Fixed.


-- 

rth at gcc dot gnu dot org changed:

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


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2005-10-06  6:55 ` kkojima at gcc dot gnu dot org
@ 2005-10-06 17:06 ` cvs-commit at gcc dot gnu dot org
  2005-10-06 17:17 ` rth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 18+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-10-06 17:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from cvs-commit at gcc dot gnu dot org  2005-10-06 17:06 -------
Subject: Bug 23706

CVSROOT:        /cvs/gcc
Module name:    gcc
Changes by:     rth@gcc.gnu.org 2005-10-06 17:06:12

Modified files:
        gcc            : ChangeLog mode-switching.c 
        gcc/config/sh  : sh.c sh.md 

Log message:
        PR 23706
        * mode-switching.c (optimize_mode_switching): Clear transp bit
        for block with incomming abnormal edges.

        * config/sh/sh.c (fpscr_values, emit_fpu_switch): New.
        (fpscr_set_from_mem): Use them.
        * config/sh/sh.md (fpu_switch0, fpu_switch1): Remove.
        (fpscr postinc splitters): Rewrite as peephole2+split.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.10103&r2=2.10104
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/mode-switching.c.diff?cvsroot=gcc&r1=2.6&r2=2.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sh/sh.c.diff?cvsroot=gcc&r1=1.348&r2=1.349
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sh/sh.md.diff?cvsroot=gcc&r1=1.200&r2=1.201


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2005-10-06  3:17 ` rth at gcc dot gnu dot org
@ 2005-10-06  6:55 ` kkojima at gcc dot gnu dot org
  2005-10-06 17:06 ` cvs-commit at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2005-10-06  6:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from kkojima at gcc dot gnu dot org  2005-10-06 06:55 -------
There are no regressions on x86-linux cross sh4-unknown-linux-gnu.


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2005-10-06  2:49 ` kkojima at gcc dot gnu dot org
@ 2005-10-06  3:17 ` rth at gcc dot gnu dot org
  2005-10-06  6:55 ` kkojima at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 18+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-10-06  3:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from rth at gcc dot gnu dot org  2005-10-06 03:17 -------
And regression testing?  Anything that actually excersises the fpscr switching
code...


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
  2005-10-06  0:53 ` rth at gcc dot gnu dot org
  2005-10-06  0:53 ` rth at gcc dot gnu dot org
@ 2005-10-06  2:49 ` kkojima at gcc dot gnu dot org
  2005-10-06  3:17 ` rth at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 18+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2005-10-06  2:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from kkojima at gcc dot gnu dot org  2005-10-06 02:49 -------
The patch gets rid of the ICE and makes it possible to build
libjava with --enable-cheching on sh4-unknown-linux-gnu again.
Thanks!


-- 


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
@ 2005-10-06  0:53 ` rth at gcc dot gnu dot org
  2005-10-06  0:53 ` rth at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 18+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-10-06  0:53 UTC (permalink / raw)
  To: gcc-bugs



-- 

rth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |WAITING


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


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

* [Bug target/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
       [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
  2005-10-06  0:53 ` rth at gcc dot gnu dot org
@ 2005-10-06  0:53 ` rth at gcc dot gnu dot org
  2005-10-06  2:49 ` kkojima at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 18+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-10-06  0:53 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rth at gcc dot gnu dot org  2005-10-06 00:53 -------
Created an attachment (id=9898)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9898&action=view)
maybe fix mode switching vs abnormal edges

Try this patch on top of the other.


-- 


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


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

end of thread, other threads:[~2006-03-08  0:12 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-09-02 23:32 [Bug middle-end/23706] New: [4.1 Regression] ICE in rtl_verify_flow_info_1 kkojima at gcc dot gnu dot org
2005-09-02 23:33 ` [Bug middle-end/23706] " kkojima at gcc dot gnu dot org
2005-09-03  0:27 ` rth at gcc dot gnu dot org
2005-09-03  0:37 ` pinskia at gcc dot gnu dot org
2005-09-03  0:40 ` kkojima at gcc dot gnu dot org
2005-09-03  3:29 ` [Bug target/23706] " pinskia at gcc dot gnu dot org
2005-09-03  7:08 ` kkojima at gcc dot gnu dot org
2005-09-03  9:20 ` kkojima at gcc dot gnu dot org
     [not found] <bug-23706-5208@http.gcc.gnu.org/bugzilla/>
2005-10-06  0:53 ` rth at gcc dot gnu dot org
2005-10-06  0:53 ` rth at gcc dot gnu dot org
2005-10-06  2:49 ` kkojima at gcc dot gnu dot org
2005-10-06  3:17 ` rth at gcc dot gnu dot org
2005-10-06  6:55 ` kkojima at gcc dot gnu dot org
2005-10-06 17:06 ` cvs-commit at gcc dot gnu dot org
2005-10-06 17:17 ` rth at gcc dot gnu dot org
2005-10-06 17:22 ` pinskia at gcc dot gnu dot org
2006-03-06 22:40 ` kkojima at gcc dot gnu dot org
2006-03-08  0:12 ` pinskia 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).