This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/78574] [7 Regression] ice on valid C code at -O2 and -O3 in both 32- and 64-bit modes on x86_64-linux-gnu (internal compiler error: Segmentation fault (program cc1))
- From: "msebor at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 29 Nov 2016 00:11:42 +0000
- Subject: [Bug c/78574] [7 Regression] ice on valid C code at -O2 and -O3 in both 32- and 64-bit modes on x86_64-linux-gnu (internal compiler error: Segmentation fault (program cc1))
- Auto-submitted: auto-generated
- References: <bug-78574-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78574
Martin Sebor <msebor at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Known to work| |6.2.0
Keywords| |ice-on-valid-code
Last reconfirmed| |2016-11-29
CC| |msebor at gcc dot gnu.org
Ever confirmed|0 |1
Summary|ice on valid C code at -O2 |[7 Regression] ice on valid
|and -O3 in both 32- and |C code at -O2 and -O3 in
|64-bit modes on |both 32- and 64-bit modes
|x86_64-linux-gnu (internal |on x86_64-linux-gnu
|compiler error: |(internal compiler error:
|Segmentation fault (program |Segmentation fault (program
|cc1)) |cc1))
Known to fail| |7.0
--- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> ---
Confirmed. Bisection points to r238242 as the first change with which the ICE
occurs.
r238242 | rguenth | 2016-07-12 09:32:04 -0400 (Tue, 12 Jul 2016) | 48 lines
2016-07-12 Steven Bosscher <steven@gcc.gnu.org>
Richard Biener <rguenther@suse.de>
PR tree-optimization/23286
PR tree-optimization/70159
* doc/invoke.texi: Document -fcode-hoisting.
* common.opt (fcode-hoisting): New flag.
* opts.c (default_options_table): Enable -fcode-hoisting at -O2+.
* tree-ssa-pre.c (pre_stats): Add hoist_insert.
(do_regular_insertion): Rename to ...
(do_pre_regular_insertion): ... this and amend general comments
on insertion strathegy.
(do_partial_partial_insertion): Rename to ...
(do_pre_partial_partial_insertion): ... this.
(do_hoist_insertion): New function.
(insert_aux): Take flags on whether to do PRE and/or hoist insertion
and call do_hoist_insertion properly.
(insert): Adjust.
(pass_pre::gate): Enable also if -fcode-hoisting is enabled.
(pass_pre::execute): Register hoist_insert stats.