public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 @ 2012-09-20 22:13 dcb314 at hotmail dot com 2012-09-20 23:40 ` [Bug c++/54647] " markus at trippelsdorf dot de ` (6 more replies) 0 siblings, 7 replies; 8+ messages in thread From: dcb314 at hotmail dot com @ 2012-09-20 22:13 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 Bug #: 54647 Summary: Segmentation fault in get_expr_value_id with -O2 Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned@gcc.gnu.org ReportedBy: dcb314@hotmail.com Created attachment 28240 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28240 C++ source code I just tried to compile the package kdelibs3-3.5.10-39 on gcc-4.8 trunk dated 20120919 on an AMD x86_64 box. The compiler said render_table.cpp: In member function 'void khtml::RenderTable::splitColumn(int, int)': render_table.cpp:563:6: internal compiler error: Segmentation fault void RenderTable::splitColumn( int pos, int firstSpan ) ^ Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. Here is valgrind helping out with a stack backtrace ==27576== Invalid read of size 4 ==27576== at 0xB5BAC8: get_expr_value_id(pre_expr_d*) (tree-ssa-pre.c:615) ==27576== by 0xB6346A: find_or_generate_expression(basic_block_def*, pre_expr_d*, gimple_statement_d**, gimple_statement_d*) [clone .constprop.104] (tree-ssa-pre.c:2894) ==27576== by 0xB60282: create_expression_by_pieces(basic_block_def*, pre_expr_d*, gimple_statement_d**, gimple_statement_d*, tree_node*) [clone .constprop.103] (tree-ssa-pre.c:2995) ==27576== by 0xB606FD: insert_into_preds_of_block(basic_block_def*, unsigned int, vec_t<pre_expr_d*>*) (tree-ssa-pre.c:3234) ==27576== by 0xB61743: insert_aux(basic_block_def*) (tree-ssa-pre.c:3524) ==27576== by 0xB61127: insert_aux(basic_block_def*) (tree-ssa-pre.c:3749) ==27576== by 0xB61127: insert_aux(basic_block_def*) (tree-ssa-pre.c:3749) ==27576== by 0xB61127: insert_aux(basic_block_def*) (tree-ssa-pre.c:3749) ==27576== by 0xB61127: insert_aux(basic_block_def*) (tree-ssa-pre.c:3749) ==27576== by 0xB61127: insert_aux(basic_block_def*) (tree-ssa-pre.c:3749) ==27576== by 0xB61127: insert_aux(basic_block_def*) (tree-ssa-pre.c:3749) ==27576== by 0xB61127: insert_aux(basic_block_def*) (tree-ssa-pre.c:3749) ==27576== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==27576== Preprocessed source code attached. Flag -O2 required. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/54647] Segmentation fault in get_expr_value_id with -O2 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com @ 2012-09-20 23:40 ` markus at trippelsdorf dot de 2012-09-20 23:56 ` paolo.carlini at oracle dot com ` (5 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: markus at trippelsdorf dot de @ 2012-09-20 23:40 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 Markus Trippelsdorf <markus at trippelsdorf dot de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |markus at trippelsdorf dot | |de --- Comment #1 from Markus Trippelsdorf <markus at trippelsdorf dot de> 2012-09-20 23:39:33 UTC --- class A { }; template <class type> struct D:A { type & operator[](int); }; struct B { typedef D <int *>Row; struct C { Row *row; }; }; B::C a; B::Row & b = *a.row; void fn1 () { while (1) b[0] = b[0] ? (int *) -1 : 0; } ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/54647] Segmentation fault in get_expr_value_id with -O2 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com 2012-09-20 23:40 ` [Bug c++/54647] " markus at trippelsdorf dot de @ 2012-09-20 23:56 ` paolo.carlini at oracle dot com 2012-09-20 23:56 ` paolo.carlini at oracle dot com ` (4 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: paolo.carlini at oracle dot com @ 2012-09-20 23:56 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 --- Comment #2 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-09-20 23:55:35 UTC --- Thanks! ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug c++/54647] Segmentation fault in get_expr_value_id with -O2 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com 2012-09-20 23:40 ` [Bug c++/54647] " markus at trippelsdorf dot de 2012-09-20 23:56 ` paolo.carlini at oracle dot com @ 2012-09-20 23:56 ` paolo.carlini at oracle dot com 2012-09-21 8:55 ` [Bug tree-optimization/54647] [4.8 Regression] " rguenth at gcc dot gnu.org ` (3 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: paolo.carlini at oracle dot com @ 2012-09-20 23:56 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 Paolo Carlini <paolo.carlini at oracle dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2012-09-20 Ever Confirmed|0 |1 --- Comment #3 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-09-20 23:56:19 UTC --- Confirmed. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/54647] [4.8 Regression] Segmentation fault in get_expr_value_id with -O2 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com ` (2 preceding siblings ...) 2012-09-20 23:56 ` paolo.carlini at oracle dot com @ 2012-09-21 8:55 ` rguenth at gcc dot gnu.org 2012-09-21 9:46 ` rguenth at gcc dot gnu.org ` (2 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-09-21 8:55 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Component|c++ |tree-optimization Known to work| |4.7.2 AssignedTo|unassigned at gcc dot |rguenth at gcc dot gnu.org |gnu.org | Target Milestone|--- |4.8.0 Summary|Segmentation fault in |[4.8 Regression] |get_expr_value_id with -O2 |Segmentation fault in | |get_expr_value_id with -O2 --- Comment #4 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-21 08:54:23 UTC --- Mine. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/54647] [4.8 Regression] Segmentation fault in get_expr_value_id with -O2 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com ` (3 preceding siblings ...) 2012-09-21 8:55 ` [Bug tree-optimization/54647] [4.8 Regression] " rguenth at gcc dot gnu.org @ 2012-09-21 9:46 ` rguenth at gcc dot gnu.org 2012-09-21 12:44 ` rguenth at gcc dot gnu.org 2012-09-21 12:46 ` rguenth at gcc dot gnu.org 6 siblings, 0 replies; 8+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-09-21 9:46 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 --- Comment #5 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-21 09:45:27 UTC --- Hm. We are now facing COND_EXPRs in VN / PRE. But COND_EXPRs have an embedded tree expression for the condition which we have no way of (easily) generating. Let me try to fix this without simply giving up on optimizing those COND_EXPRs. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/54647] [4.8 Regression] Segmentation fault in get_expr_value_id with -O2 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com ` (4 preceding siblings ...) 2012-09-21 9:46 ` rguenth at gcc dot gnu.org @ 2012-09-21 12:44 ` rguenth at gcc dot gnu.org 2012-09-21 12:46 ` rguenth at gcc dot gnu.org 6 siblings, 0 replies; 8+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-09-21 12:44 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 --- Comment #6 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-21 12:44:12 UTC --- Author: rguenth Date: Fri Sep 21 12:44:07 2012 New Revision: 191613 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191613 Log: 2012-09-21 Richard Guenther <rguenther@suse.de> PR tree-optimization/54647 * tree-ssa-pre.c (compute_avail): Do not put COND_EXPR or VEC_COND_EXPR into EXP_GEN again. * g++.dg/torture/pr54647.C: New testcase. Added: trunk/gcc/testsuite/g++.dg/torture/pr54647.C Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-pre.c ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/54647] [4.8 Regression] Segmentation fault in get_expr_value_id with -O2 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com ` (5 preceding siblings ...) 2012-09-21 12:44 ` rguenth at gcc dot gnu.org @ 2012-09-21 12:46 ` rguenth at gcc dot gnu.org 6 siblings, 0 replies; 8+ messages in thread From: rguenth at gcc dot gnu.org @ 2012-09-21 12:46 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54647 Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED --- Comment #7 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-09-21 12:45:49 UTC --- Fixed. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2012-09-21 12:46 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2012-09-20 22:13 [Bug c++/54647] New: Segmentation fault in get_expr_value_id with -O2 dcb314 at hotmail dot com 2012-09-20 23:40 ` [Bug c++/54647] " markus at trippelsdorf dot de 2012-09-20 23:56 ` paolo.carlini at oracle dot com 2012-09-20 23:56 ` paolo.carlini at oracle dot com 2012-09-21 8:55 ` [Bug tree-optimization/54647] [4.8 Regression] " rguenth at gcc dot gnu.org 2012-09-21 9:46 ` rguenth at gcc dot gnu.org 2012-09-21 12:44 ` rguenth at gcc dot gnu.org 2012-09-21 12:46 ` rguenth at gcc dot gnu.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).