public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions
@ 2007-11-08 22:01 janis at gcc dot gnu dot org
2007-11-08 22:03 ` [Bug tree-optimization/34036] [4.3 Regression] " pinskia at gcc dot gnu dot org
` (11 more replies)
0 siblings, 12 replies; 13+ messages in thread
From: janis at gcc dot gnu dot org @ 2007-11-08 22:01 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2342 bytes --]
Test eon from SPEC CPU2000 fails to build with "-O2 -fnon-call-exceptions
-ffast-math -fsignaling-nans" due to an ICE for control flow in the middle of a
basic block. Two minimized tests show different warnings on both powerpc-linux
and i686-linux:
elm3b145% /opt/gcc-nightly/trunk/bin/g++ -O2 -fnon-call-exceptions -ffast-math
-fsignaling-nans -c bug13.cc
bug13.cc: In constructor mrGrid::mrGrid():
bug13.cc:22: error: control flow in the middle of basic block 4
bug13.cc:22: internal compiler error: verify_flow_info failed
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
elm3b145% /opt/gcc-nightly/trunk/bin/g++ -O2 -fnon-call-exceptions -ffast-math
-fsignaling-nans -c bug14.cc
bug14.cc: In function int main():
bug14.cc:27: error: BB 11 can not throw but has EH edges
bug14.cc:27: error: BB 12 can not throw but has EH edges
bug14.cc:27: error: control flow in the middle of basic block 13
bug14.cc:27: error: control flow in the middle of basic block 13
bug14.cc:27: internal compiler error: verify_flow_info failed
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
Here's bug13.cc; I'll attach the other which is slightly larger.
template <class T>
class ggStaticArray {
public:
~ggStaticArray();
};
template <class T>
class ggGrid {
public:
ggGrid() : grid() { }
ggStaticArray<T> grid;
};
class mrGrid {
public:
mrGrid(void);
protected:
ggGrid<int*> grid;
double multiplier;
};
mrGrid::mrGrid(void)
{
double xMeasure, yMeasure, zMeasure;
double cellDimension;
cellDimension = multiplier * (xMeasure * yMeasure * zMeasure);
}
Regression hunts for both identified this patch:
http://gcc.gnu.org/viewcvs?view=rev&rev=108425
r108425 | law | 2005-12-12 19:59:16 +0000 (Mon, 12 Dec 2005)
--
Summary: ICE with control flow in the middle of basic block for
-fnon-call-exceptions
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: janis at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
@ 2007-11-08 22:03 ` pinskia at gcc dot gnu dot org
2007-11-10 19:51 ` law at redhat dot com
` (10 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-11-08 22:03 UTC (permalink / raw)
To: gcc-bugs
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |pinskia at gcc dot gnu dot
| |org
Keywords| |ice-on-valid-code
Summary|ICE with control flow in |[4.3 Regression] ICE with
|the middle of basic block |control flow in the middle
|for -fnon-call-exceptions |of basic block for -fnon-
| |call-exceptions
Target Milestone|--- |4.3.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
2007-11-08 22:03 ` [Bug tree-optimization/34036] [4.3 Regression] " pinskia at gcc dot gnu dot org
@ 2007-11-10 19:51 ` law at redhat dot com
2007-11-10 22:05 ` pinskia at gcc dot gnu dot org
` (9 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: law at redhat dot com @ 2007-11-10 19:51 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from law at redhat dot com 2007-11-10 19:51 -------
I don't see how my patch could be the root cause -- more likely than not my
patch is exposing a latent bug elsewhere.
I'm on an extended leave-of-absence from GCC stuff, but I'll try to take a
looksie and at least get someone pointed in the right direction.
Jeff
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
2007-11-08 22:03 ` [Bug tree-optimization/34036] [4.3 Regression] " pinskia at gcc dot gnu dot org
2007-11-10 19:51 ` law at redhat dot com
@ 2007-11-10 22:05 ` pinskia at gcc dot gnu dot org
2007-11-10 22:14 ` pinskia at gcc dot gnu dot org
` (8 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-11-10 22:05 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from pinskia at gcc dot gnu dot org 2007-11-10 22:05 -------
Hmm, I think these options are a bit weird:
-ffast-math -fsignaling-nans
-ffast-math enables -fno-signal-math so how can NaNs signal?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (2 preceding siblings ...)
2007-11-10 22:05 ` pinskia at gcc dot gnu dot org
@ 2007-11-10 22:14 ` pinskia at gcc dot gnu dot org
2007-11-10 22:15 ` pinskia at gcc dot gnu dot org
` (7 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-11-10 22:14 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from pinskia at gcc dot gnu dot org 2007-11-10 22:14 -------
D.2119_6 = xMeasure_4(D) * zMeasure_7(D);
D.2120_8 = D.2119_6 * yMeasure_5(D);
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (3 preceding siblings ...)
2007-11-10 22:14 ` pinskia at gcc dot gnu dot org
@ 2007-11-10 22:15 ` pinskia at gcc dot gnu dot org
2007-11-10 22:18 ` [Bug tree-optimization/34036] [4.2/4.3 " pinskia at gcc dot gnu dot org
` (6 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-11-10 22:15 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from pinskia at gcc dot gnu dot org 2007-11-10 22:15 -------
The rewrite of tree-ssa-reassoc.c caused this. That is the crash is after
tree-ssa-reassoc.c runs.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.2/4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (4 preceding siblings ...)
2007-11-10 22:15 ` pinskia at gcc dot gnu dot org
@ 2007-11-10 22:18 ` pinskia at gcc dot gnu dot org
2007-11-12 18:44 ` janis at gcc dot gnu dot org
` (5 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-11-10 22:18 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from pinskia at gcc dot gnu dot org 2007-11-10 22:18 -------
This is also a 4.2 regression.
Confirmed.
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |dberlin at gcc dot gnu dot
| |org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2007-11-10 22:18:27
date| |
Summary|[4.3 Regression] ICE with |[4.2/4.3 Regression] ICE
|control flow in the middle |with control flow in the
|of basic block for -fnon- |middle of basic block for -
|call-exceptions |fnon-call-exceptions
Target Milestone|4.3.0 |4.2.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.2/4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (5 preceding siblings ...)
2007-11-10 22:18 ` [Bug tree-optimization/34036] [4.2/4.3 " pinskia at gcc dot gnu dot org
@ 2007-11-12 18:44 ` janis at gcc dot gnu dot org
2007-11-14 18:06 ` ebotcazou at gcc dot gnu dot org
` (4 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: janis at gcc dot gnu dot org @ 2007-11-12 18:44 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from janis at gcc dot gnu dot org 2007-11-12 18:44 -------
In response to comment #2, the options are indeed weird. This is one of the
failures discovered by using combinations of options as described in
http://gcc.gnu.org/ml/gcc/2007-09/msg00496.html. The correct fix might be to
simply disallow combinations of options that don't make sense, or to report
that the combination doesn't make sense and that one of them is ignored.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.2/4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (6 preceding siblings ...)
2007-11-12 18:44 ` janis at gcc dot gnu dot org
@ 2007-11-14 18:06 ` ebotcazou at gcc dot gnu dot org
2007-11-19 6:27 ` ebotcazou at gcc dot gnu dot org
` (3 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2007-11-14 18:06 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from ebotcazou at gcc dot gnu dot org 2007-11-14 18:05 -------
Investigating.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |ebotcazou at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
Last reconfirmed|2007-11-10 22:18:27 |2007-11-14 18:05:55
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.2/4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (7 preceding siblings ...)
2007-11-14 18:06 ` ebotcazou at gcc dot gnu dot org
@ 2007-11-19 6:27 ` ebotcazou at gcc dot gnu dot org
2007-11-19 6:29 ` ebotcazou at gcc dot gnu dot org
` (2 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2007-11-19 6:27 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from ebotcazou at gcc dot gnu dot org 2007-11-19 06:27 -------
Subject: Bug 34036
Author: ebotcazou
Date: Mon Nov 19 06:27:31 2007
New Revision: 130286
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=130286
Log:
PR tree-optimization/34036
* opts.c (set_fast_math_flags): Do not set flags in common
with set_unsafe_math_optimizations_flags, invoke it directly.
(set_unsafe_math_optimizations_flags): Unset flag_trapping_math
and flag_signed_zeros.
* toplev.c (process_options): Force flag_associative_math to 0 and
warn, if it is set and either flag_trapping_math or flag_signed_zeros
is set too.
* doc/invoke.texi (Optimize Options): Document the new behavior
of -funsafe-math-optimizations, that -fassociative-math requires
both -fno-signed-zeros and -fno-trapping-math and make it clear
that -fno-trapping-math requires -fno-signaling-nans.
Added:
trunk/gcc/testsuite/g++.dg/opt/pr34036.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/doc/invoke.texi
trunk/gcc/opts.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/pr33007.c
trunk/gcc/testsuite/gcc.dg/tree-ssa/recip-5.c
trunk/gcc/toplev.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.2/4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (8 preceding siblings ...)
2007-11-19 6:27 ` ebotcazou at gcc dot gnu dot org
@ 2007-11-19 6:29 ` ebotcazou at gcc dot gnu dot org
2007-11-19 11:07 ` ebotcazou at gcc dot gnu dot org
2007-11-19 17:27 ` ebotcazou at gcc dot gnu dot org
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2007-11-19 6:29 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from ebotcazou at gcc dot gnu dot org 2007-11-19 06:29 -------
Fixed on mainline. Not worth backporting to other branches.
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
Target Milestone|4.2.3 |4.3.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.2/4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (9 preceding siblings ...)
2007-11-19 6:29 ` ebotcazou at gcc dot gnu dot org
@ 2007-11-19 11:07 ` ebotcazou at gcc dot gnu dot org
2007-11-19 17:27 ` ebotcazou at gcc dot gnu dot org
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2007-11-19 11:07 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from ebotcazou at gcc dot gnu dot org 2007-11-19 11:07 -------
Subject: Bug 34036
Author: ebotcazou
Date: Mon Nov 19 11:07:28 2007
New Revision: 130287
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=130287
Log:
PR tree-optimization/34036
* doc/invoke.texi (Optimize Options): Refactor documentation
of -ffast-math.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/doc/invoke.texi
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/34036] [4.2/4.3 Regression] ICE with control flow in the middle of basic block for -fnon-call-exceptions
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
` (10 preceding siblings ...)
2007-11-19 11:07 ` ebotcazou at gcc dot gnu dot org
@ 2007-11-19 17:27 ` ebotcazou at gcc dot gnu dot org
11 siblings, 0 replies; 13+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2007-11-19 17:27 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from ebotcazou at gcc dot gnu dot org 2007-11-19 17:27 -------
Subject: Bug 34036
Author: ebotcazou
Date: Mon Nov 19 17:27:06 2007
New Revision: 130293
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=130293
Log:
PR tree-optimization/34036
* gcc.dg/tree-ssa/pr23109.c: Pass -ftrapping-math and expect warning.
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/tree-ssa/pr23109.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34036
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2007-11-19 17:27 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-11-08 22:01 [Bug tree-optimization/34036] New: ICE with control flow in the middle of basic block for -fnon-call-exceptions janis at gcc dot gnu dot org
2007-11-08 22:03 ` [Bug tree-optimization/34036] [4.3 Regression] " pinskia at gcc dot gnu dot org
2007-11-10 19:51 ` law at redhat dot com
2007-11-10 22:05 ` pinskia at gcc dot gnu dot org
2007-11-10 22:14 ` pinskia at gcc dot gnu dot org
2007-11-10 22:15 ` pinskia at gcc dot gnu dot org
2007-11-10 22:18 ` [Bug tree-optimization/34036] [4.2/4.3 " pinskia at gcc dot gnu dot org
2007-11-12 18:44 ` janis at gcc dot gnu dot org
2007-11-14 18:06 ` ebotcazou at gcc dot gnu dot org
2007-11-19 6:27 ` ebotcazou at gcc dot gnu dot org
2007-11-19 6:29 ` ebotcazou at gcc dot gnu dot org
2007-11-19 11:07 ` ebotcazou at gcc dot gnu dot org
2007-11-19 17:27 ` ebotcazou 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).