* [Bug tree-optimization/23046] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
@ 2005-07-24 13:17 ` pinskia at gcc dot gnu dot org
2005-07-24 13:23 ` [Bug tree-optimization/23046] [4.1 Regression] " pinskia at gcc dot gnu dot org
` (18 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-07-24 13:17 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Component|c++ |tree-optimization
Keywords| |ice-on-valid-code
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
2005-07-24 13:17 ` [Bug tree-optimization/23046] " pinskia at gcc dot gnu dot org
@ 2005-07-24 13:23 ` pinskia at gcc dot gnu dot org
2005-07-24 13:54 ` pinskia at gcc dot gnu dot org
` (17 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-07-24 13:23 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Summary|ICE in set_value_range, at |[4.1 Regression] ICE in
|tree-vrp.c:191 |set_value_range, at tree-
| |vrp.c:191
Target Milestone|--- |4.1.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
2005-07-24 13:17 ` [Bug tree-optimization/23046] " pinskia at gcc dot gnu dot org
2005-07-24 13:23 ` [Bug tree-optimization/23046] [4.1 Regression] " pinskia at gcc dot gnu dot org
@ 2005-07-24 13:54 ` pinskia at gcc dot gnu dot org
2005-07-25 21:43 ` pinskia at gcc dot gnu dot org
` (16 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-07-24 13:54 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-07-24 13:37 -------
Hmm, nothing can be done without a testcase.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |pinskia at gcc dot gnu dot
| |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (2 preceding siblings ...)
2005-07-24 13:54 ` pinskia at gcc dot gnu dot org
@ 2005-07-25 21:43 ` pinskia at gcc dot gnu dot org
2005-07-29 22:21 ` falk at debian dot org
` (15 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-07-25 21:43 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-07-25 21:41 -------
You might want to try delta:
http://www.cs.berkeley.edu/~dsw/
I use the following script with delta to reduce stuff like this:
#!/usr/bin/python
# Using delta debugging on GCC input
#import psyco
#from psyco.classes import *
import commands
import string
import sys
# Invoke GCC
(status, output) = commands.getstatusoutput("/Users/pinskia/local.c/libexec/gcc/powerpc-apple-
darwin7.9.0/4.1.0/cc1plus -quiet --param ggc-min-expand=0 --param ggc-min-heapsize=0
-Wfatal-errors %s 2>&1" % sys.argv[1])
# Determine outcome
if status == 0:
sys.exit(1)
elif string.find(output, "finish_compound_stmt") >= 0:
sys.exit(0)
else:
sys.exit(1)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (3 preceding siblings ...)
2005-07-25 21:43 ` pinskia at gcc dot gnu dot org
@ 2005-07-29 22:21 ` falk at debian dot org
2005-08-01 7:45 ` dank at kegel dot com
` (14 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: falk at debian dot org @ 2005-07-29 22:21 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From falk at debian dot org 2005-07-29 22:20 -------
waiting for testcase...
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |WAITING
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (4 preceding siblings ...)
2005-07-29 22:21 ` falk at debian dot org
@ 2005-08-01 7:45 ` dank at kegel dot com
2005-08-04 18:31 ` pinskia at gcc dot gnu dot org
` (13 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: dank at kegel dot com @ 2005-08-01 7:45 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dank at kegel dot com 2005-08-01 07:45 -------
yup. I hope to try out 'delta' soon.
BTW it appears to be x86_64 specific. ppc and pentium didn't seem to show it.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (5 preceding siblings ...)
2005-08-01 7:45 ` dank at kegel dot com
@ 2005-08-04 18:31 ` pinskia at gcc dot gnu dot org
2005-08-04 18:43 ` pinskia at gcc dot gnu dot org
` (12 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-04 18:31 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-04 18:31 -------
Confirmed, reducing a little further.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2005-08-04 18:31:51
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (6 preceding siblings ...)
2005-08-04 18:31 ` pinskia at gcc dot gnu dot org
@ 2005-08-04 18:43 ` pinskia at gcc dot gnu dot org
2005-08-04 19:18 ` dank at kegel dot com
` (11 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-04 18:43 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-04 18:43 -------
Reduced testcase:
enum eumtype { ENUM1, ENUM2 };
void g(const eumtype kind );
void f(long i);
void g(const eumtype kind)
{
if ((kind != ENUM1) && (kind != ENUM2))
f(kind);
}
--- the tree before VRP:
void g(eumtype) (kind)
{
long int kind.0;
<bb 0>:
if (kind_1 > 1) goto <L0>; else goto <L1>;
<L0>:;
kind.0_2 = (long int) kind_1;
f (kind.0_2);
<L1>:;
return;
}
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |phython at gcc dot gnu dot
| |org, dnovillo at gcc dot gnu
| |dot org
Last reconfirmed|2005-08-04 18:31:51 |2005-08-04 18:43:23
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (7 preceding siblings ...)
2005-08-04 18:43 ` pinskia at gcc dot gnu dot org
@ 2005-08-04 19:18 ` dank at kegel dot com
2005-08-04 19:22 ` phython at gcc dot gnu dot org
` (10 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: dank at kegel dot com @ 2005-08-04 19:18 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dank at kegel dot com 2005-08-04 19:18 -------
In general, once a ten-line testcase is found, do these get added
to the gcc regression testsuite as a matter of course?
We would be happy to submit patches to add these to the test suite, but
we don't have copyright assignments in. Let us know if we
should submit such patches anyway.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (8 preceding siblings ...)
2005-08-04 19:18 ` dank at kegel dot com
@ 2005-08-04 19:22 ` phython at gcc dot gnu dot org
2005-08-04 19:23 ` pinskia at gcc dot gnu dot org
` (9 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: phython at gcc dot gnu dot org @ 2005-08-04 19:22 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From phython at gcc dot gnu dot org 2005-08-04 19:22 -------
When the patch that fixes a bug is put into GCC the testcases go in as well.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (9 preceding siblings ...)
2005-08-04 19:22 ` phython at gcc dot gnu dot org
@ 2005-08-04 19:23 ` pinskia at gcc dot gnu dot org
2005-08-04 19:24 ` dnovillo at redhat dot com
` (8 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-04 19:23 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-04 19:23 -------
(In reply to comment #8)
> In general, once a ten-line testcase is found, do these get added
> to the gcc regression testsuite as a matter of course?
In general once the fix is found, it will be added to the testsuite.
If it was already fixed, it will be added.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (10 preceding siblings ...)
2005-08-04 19:23 ` pinskia at gcc dot gnu dot org
@ 2005-08-04 19:24 ` dnovillo at redhat dot com
2005-08-05 13:30 ` dnovillo at gcc dot gnu dot org
` (7 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: dnovillo at redhat dot com @ 2005-08-04 19:24 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dnovillo at redhat dot com 2005-08-04 19:24 -------
Subject: Re: [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
On Thu, Aug 04, 2005 at 07:18:13PM -0000, dank at kegel dot com wrote:
> In general, once a ten-line testcase is found, do these get added
> to the gcc regression testsuite as a matter of course?
>
No. Only after a fix has been created for the failure.
> We would be happy to submit patches to add these to the test suite, but
> we don't have copyright assignments in. Let us know if we
> should submit such patches anyway.
>
I don't know whether test cases require copyright assignments.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (11 preceding siblings ...)
2005-08-04 19:24 ` dnovillo at redhat dot com
@ 2005-08-05 13:30 ` dnovillo at gcc dot gnu dot org
2005-08-05 13:36 ` dnovillo at gcc dot gnu dot org
` (6 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: dnovillo at gcc dot gnu dot org @ 2005-08-05 13:30 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dnovillo at gcc dot gnu dot org 2005-08-05 13:30 -------
Can't reproduce with mainline as of 2005-08-04. Could you try again?
--
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WORKSFORME
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (12 preceding siblings ...)
2005-08-05 13:30 ` dnovillo at gcc dot gnu dot org
@ 2005-08-05 13:36 ` dnovillo at gcc dot gnu dot org
2005-08-05 13:36 ` dnovillo at gcc dot gnu dot org
` (5 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: dnovillo at gcc dot gnu dot org @ 2005-08-05 13:36 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |dnovillo at gcc dot gnu dot
|dot org |org
Status|REOPENED |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (13 preceding siblings ...)
2005-08-05 13:36 ` dnovillo at gcc dot gnu dot org
@ 2005-08-05 13:36 ` dnovillo at gcc dot gnu dot org
2005-08-05 14:49 ` phython at gcc dot gnu dot org
` (4 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: dnovillo at gcc dot gnu dot org @ 2005-08-05 13:36 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dnovillo at gcc dot gnu dot org 2005-08-05 13:36 -------
Bah. My compiler had checking disabled. Sorry about that.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|WORKSFORME |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (14 preceding siblings ...)
2005-08-05 13:36 ` dnovillo at gcc dot gnu dot org
@ 2005-08-05 14:49 ` phython at gcc dot gnu dot org
2005-08-05 16:46 ` dnovillo at gcc dot gnu dot org
` (3 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: phython at gcc dot gnu dot org @ 2005-08-05 14:49 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From phython at gcc dot gnu dot org 2005-08-05 14:49 -------
I patched fold to change if (FOO > TYPE_MAX) or if (FOO < TYPE_MIN) to if (0)
and this fixes the ice. I'll mail the patch when I get back from work tonight.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (15 preceding siblings ...)
2005-08-05 14:49 ` phython at gcc dot gnu dot org
@ 2005-08-05 16:46 ` dnovillo at gcc dot gnu dot org
2005-08-05 17:39 ` dnovillo at gcc dot gnu dot org
` (2 subsequent siblings)
19 siblings, 0 replies; 21+ messages in thread
From: dnovillo at gcc dot gnu dot org @ 2005-08-05 16:46 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dnovillo at gcc dot gnu dot org 2005-08-05 16:46 -------
(In reply to comment #14)
> I patched fold to change if (FOO > TYPE_MAX) or if (FOO < TYPE_MIN) to if (0)
> and this fixes the ice. I'll mail the patch when I get back from work tonight.
That was my idea too, but it may not be as easy as it looks. See Roger's
response to my message http://gcc.gnu.org/ml/gcc/2005-08/msg00169.html.
The problem now is that VRP will either need to treat the range as VARYING or do
some trickery to fold that conditional. For 4.1 it is probably easier to just
set the range to VARYING.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |sayle at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (16 preceding siblings ...)
2005-08-05 16:46 ` dnovillo at gcc dot gnu dot org
@ 2005-08-05 17:39 ` dnovillo at gcc dot gnu dot org
2005-08-29 15:36 ` dank at kegel dot com
2005-09-19 17:44 ` pinskia at gcc dot gnu dot org
19 siblings, 0 replies; 21+ messages in thread
From: dnovillo at gcc dot gnu dot org @ 2005-08-05 17:39 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dnovillo at gcc dot gnu dot org 2005-08-05 17:39 -------
James has a potential fix for fold. If that doesn't work, a simple change to
extract_range_from_assert_expr should provide a similar effect. However, the
real problem in this PR is fold() not doing its job.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|dnovillo at gcc dot gnu dot |phython at gcc dot gnu dot
|org |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (17 preceding siblings ...)
2005-08-05 17:39 ` dnovillo at gcc dot gnu dot org
@ 2005-08-29 15:36 ` dank at kegel dot com
2005-09-19 17:44 ` pinskia at gcc dot gnu dot org
19 siblings, 0 replies; 21+ messages in thread
From: dank at kegel dot com @ 2005-08-29 15:36 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From dank at kegel dot com 2005-08-29 15:34 -------
I think Jim's fold fix/workaround is at
http://gcc.gnu.org/ml/gcc-patches/2005-08/msg00371.html
I'm using it locally now, and it seems at first glance
to get us past this problem.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug tree-optimization/23046] [4.1 Regression] ICE in set_value_range, at tree-vrp.c:191
2005-07-24 9:06 [Bug c++/23046] New: ICE in set_value_range, at tree-vrp.c:191 dank at kegel dot com
` (18 preceding siblings ...)
2005-08-29 15:36 ` dank at kegel dot com
@ 2005-09-19 17:44 ` pinskia at gcc dot gnu dot org
19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-19 17:44 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
OtherBugsDependingO| |23968
nThis| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23046
^ permalink raw reply [flat|nested] 21+ messages in thread