public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup
@ 2004-07-20 13:03 rsandifo at gcc dot gnu dot org
2004-07-20 13:03 ` [Bug rtl-optimization/16643] " rsandifo at gcc dot gnu dot org
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2004-07-20 13:03 UTC (permalink / raw)
To: gcc-bugs
Compiling:
void f (int a, int b, int c, int d, int e, int *f)
{
if (a == 0)
if (b == 0)
if (c == 0)
if (d == 0)
{
*f += e;
return;
}
*f += e;
return;
}
with "mips64-elf-gcc -O2" gives:
/tmp/foo.c: In function `f':
/tmp/foo.c:13: internal compiler error: in verify_local_live_at_start, at flow.c:546
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
Same thing for other mips targets, like mips64-linux-gnu. The problem
is really target-independent: cleanup_cfg (CLEANUP_CFGLAYOUT), called
from within bbreorder, is deleting uses of registers and not updating
liveness information. This in turn seems to expose a problem with
try_simplify_condjump() not updating the forwarder block flags.
Testing a couple of fixes now.
--
Summary: [3.4 Regression] verify_local_live_at_start ICE after
crossjumping & cfgcleanup
Product: gcc
Version: 3.4.1
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P2
Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rsandifo at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: mips64-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16643
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug rtl-optimization/16643] [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup
2004-07-20 13:03 [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup rsandifo at gcc dot gnu dot org
@ 2004-07-20 13:03 ` rsandifo at gcc dot gnu dot org
2004-07-20 13:22 ` rsandifo at gcc dot gnu dot org
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2004-07-20 13:03 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |rsandifo at gcc dot gnu dot
|dot org |org
Status|UNCONFIRMED |ASSIGNED
Known to work| |3.3.3 3.5.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16643
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug rtl-optimization/16643] [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup
2004-07-20 13:03 [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup rsandifo at gcc dot gnu dot org
2004-07-20 13:03 ` [Bug rtl-optimization/16643] " rsandifo at gcc dot gnu dot org
@ 2004-07-20 13:22 ` rsandifo at gcc dot gnu dot org
2004-07-20 14:06 ` [Bug rtl-optimization/16643] [3.4/3.5 " pinskia at gcc dot gnu dot org
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2004-07-20 13:22 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From rsandifo at gcc dot gnu dot org 2004-07-20 13:22 -------
Fails on mainline too with a trivial change:
void foo (int a, int b, int c, int d, int e, int *f)
{
if (a == 0)
if (b == 0)
if (c == 0)
if (d == 0)
{
*f = e;
return;
}
*f = e;
return;
}
--
What |Removed |Added
----------------------------------------------------------------------------
Known to work|3.3.3 3.5.0 |3.3.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16643
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug rtl-optimization/16643] [3.4/3.5 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup
2004-07-20 13:03 [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup rsandifo at gcc dot gnu dot org
2004-07-20 13:03 ` [Bug rtl-optimization/16643] " rsandifo at gcc dot gnu dot org
2004-07-20 13:22 ` rsandifo at gcc dot gnu dot org
@ 2004-07-20 14:06 ` pinskia at gcc dot gnu dot org
2004-07-26 14:34 ` cvs-commit at gcc dot gnu dot org
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-07-20 14:06 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |critical
Summary|[3.4 Regression] |[3.4/3.5 Regression]
|verify_local_live_at_start |verify_local_live_at_start
|ICE after crossjumping & |ICE after crossjumping &
|cfgcleanup |cfgcleanup
Target Milestone|--- |3.4.2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16643
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug rtl-optimization/16643] [3.4/3.5 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup
2004-07-20 13:03 [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup rsandifo at gcc dot gnu dot org
` (2 preceding siblings ...)
2004-07-20 14:06 ` [Bug rtl-optimization/16643] [3.4/3.5 " pinskia at gcc dot gnu dot org
@ 2004-07-26 14:34 ` cvs-commit at gcc dot gnu dot org
2004-07-26 14:42 ` cvs-commit at gcc dot gnu dot org
2004-07-26 14:44 ` rsandifo at gcc dot gnu dot org
5 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-07-26 14:34 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-07-26 14:34 -------
Subject: Bug 16643
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: rsandifo@gcc.gnu.org 2004-07-26 14:34:19
Modified files:
gcc : ChangeLog cfglayout.c cfglayout.h basic-block.h
bb-reorder.c function.c rtl.h tracer.c passes.c
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/gcc.c-torture/compile: 20040726-1.c
Log message:
PR rtl-optimization/16643
* cfglayout.h (cfg_layout_initialize): Add a flags parameter.
* cfglayout.c (cfg_layout_initialize): Pass it to cleanup_cfg.
* basic-block.h (reorder_basic_blocks): Add a flags parameter.
* cfglayout.c (reorder_basic_blocks): Pass it to cfg_layout_initialize.
(partition_hot_cold_basic_blocks): Pass 0 to cfg_layout_initialize.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
* rtl.h (tracer): Add a flags parameter.
* tracer.c (tracer): Pass it to cfg_layout_initialise.
* passes.c (rest_of_handle_stack_regs): Pass 0 to reorder_basic_blocks.
(rest_of_handle_reorder_blocks): Update calls to tracer and
reorder_basic_blocks, passing CLEANUP_UPDATE_LIFE if appropriate.
(rest_of_handle_tracer): Pass 0 to tracer.
(rest_of_handle_loop2): Pass 0 to cfg_layout_initialize.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.4695&r2=2.4696
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfglayout.c.diff?cvsroot=gcc&r1=1.66&r2=1.67
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfglayout.h.diff?cvsroot=gcc&r1=1.14&r2=1.15
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/basic-block.h.diff?cvsroot=gcc&r1=1.203&r2=1.204
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/bb-reorder.c.diff?cvsroot=gcc&r1=1.76&r2=1.77
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/function.c.diff?cvsroot=gcc&r1=1.560&r2=1.561
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/rtl.h.diff?cvsroot=gcc&r1=1.493&r2=1.494
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tracer.c.diff?cvsroot=gcc&r1=1.19&r2=1.20
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/passes.c.diff?cvsroot=gcc&r1=2.33&r2=2.34
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.4053&r2=1.4054
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.c-torture/compile/20040726-1.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16643
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug rtl-optimization/16643] [3.4/3.5 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup
2004-07-20 13:03 [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup rsandifo at gcc dot gnu dot org
` (3 preceding siblings ...)
2004-07-26 14:34 ` cvs-commit at gcc dot gnu dot org
@ 2004-07-26 14:42 ` cvs-commit at gcc dot gnu dot org
2004-07-26 14:44 ` rsandifo at gcc dot gnu dot org
5 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-07-26 14:42 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-07-26 14:42 -------
Subject: Bug 16643
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gcc-3_4-branch
Changes by: rsandifo@gcc.gnu.org 2004-07-26 14:42:19
Modified files:
gcc : ChangeLog cfglayout.h cfglayout.c basic-block.h
bb-reorder.c loop-init.c rtl.h tracer.c
toplev.c
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/gcc.c-torture/compile: 20040726-1.c
Log message:
PR rtl-optimization/16643
* cfglayout.h (cfg_layout_initialize): Add a flags parameter.
* cfglayout.c (cfg_layout_initialize): Pass it to cleanup_cfg.
* basic-block.h (reorder_basic_blocks): Add a flags parameter.
* cfglayout.c (reorder_basic_blocks): Pass it to cfg_layout_initialize.
* loop-init.c (loop_optimizer_init): Pass 0 to cfg_layout_initialize.
* rtl.h (tracer): Add a flags parameter.
* tracer.c (tracer): Pass it to cfg_layout_initialise.
* toplev.c (rest_of_handle_stack_regs): Pass 0 to reorder_basic_blocks.
(rest_of_handle_reorder_blocks): Update calls to tracer and
reorder_basic_blocks, passing CLEANUP_UPDATE_LIFE if appropriate.
(rest_of_handle_tracer): Pass 0 to tracer.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.566&r2=2.2326.2.567
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfglayout.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.10&r2=1.10.4.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfglayout.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.50&r2=1.50.4.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/basic-block.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.186.4.3&r2=1.186.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/bb-reorder.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.63&r2=1.63.4.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/loop-init.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.7.4.1&r2=1.7.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/rtl.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.448.4.5&r2=1.448.4.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tracer.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.16&r2=1.16.4.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/toplev.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.863.4.11&r2=1.863.4.12
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.3389.2.234&r2=1.3389.2.235
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.c-torture/compile/20040726-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=NONE&r2=1.1.2.1
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16643
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug rtl-optimization/16643] [3.4/3.5 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup
2004-07-20 13:03 [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup rsandifo at gcc dot gnu dot org
` (4 preceding siblings ...)
2004-07-26 14:42 ` cvs-commit at gcc dot gnu dot org
@ 2004-07-26 14:44 ` rsandifo at gcc dot gnu dot org
5 siblings, 0 replies; 7+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2004-07-26 14:44 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From rsandifo at gcc dot gnu dot org 2004-07-26 14:44 -------
Fixed in main & 3.4
--
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16643
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2004-07-26 14:44 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-07-20 13:03 [Bug rtl-optimization/16643] New: [3.4 Regression] verify_local_live_at_start ICE after crossjumping & cfgcleanup rsandifo at gcc dot gnu dot org
2004-07-20 13:03 ` [Bug rtl-optimization/16643] " rsandifo at gcc dot gnu dot org
2004-07-20 13:22 ` rsandifo at gcc dot gnu dot org
2004-07-20 14:06 ` [Bug rtl-optimization/16643] [3.4/3.5 " pinskia at gcc dot gnu dot org
2004-07-26 14:34 ` cvs-commit at gcc dot gnu dot org
2004-07-26 14:42 ` cvs-commit at gcc dot gnu dot org
2004-07-26 14:44 ` rsandifo 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).