public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c++/49720] New: Infinite recursion compiling gold binary_test.cc testcase @ 2011-07-12 18:17 ro at gcc dot gnu.org 2011-07-12 20:44 ` [Bug rtl-optimization/49720] " rguenth at gcc dot gnu.org ` (4 more replies) 0 siblings, 5 replies; 6+ messages in thread From: ro at gcc dot gnu.org @ 2011-07-12 18:17 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49720 Summary: Infinite recursion compiling gold binary_test.cc testcase Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned@gcc.gnu.org ReportedBy: ro@gcc.gnu.org Host: i386-pc-solaris2.11 Target: i386-pc-solaris2.11 Build: i386-pc-solaris2.11 While compiling the gold testcast binary_test.cc, cc1plus SEGVed: $ cc1plus -O2 sgr.ii int main() Analyzing compilation unit Performing interprocedural optimizations <*free_lang_data> <visibility> <early_local_cleanups> <whole-program> <profile_estimate> <cp> <inline> <pure-const> <static-var>Assembling functions: int main()Segmentation Fault In gdb, I find that there's either a deep (depth > 22000) or infinite recursion in simplify_gen_relational: #0 0x084c220d in swap_commutative_operands_p (x=0xfed6a1d0, y=0xfed6a200) at /vol/gcc/src/hg/trunk/local/gcc/rtlanal.c:3111 #1 0x084ea80a in simplify_binary_operation (code=PLUS, mode=SImode, op0=0xfed6a1d0, op1=0xfed6a200) at /vol/gcc/src/hg/trunk/local/gcc/simplify-rtx.c:1899 #2 0x084f0d4f in simplify_plus_minus (code=Unhandled dwarf expression opcode 0xf3 ) at /vol/gcc/src/hg/trunk/local/gcc/simplify-rtx.c:4064 #3 0x084eb7f9 in simplify_binary_operation_1 (code=MINUS, mode=SImode, op0=0xfd41966c, op1=0xfed6a1d0) at /vol/gcc/src/hg/trunk/local/gcc/simplify-rtx.c:2308 #4 simplify_binary_operation (code=MINUS, mode=SImode, op0=0xfd41966c, op1=0xfed6a1d0) at /vol/gcc/src/hg/trunk/local/gcc/simplify-rtx.c:1910 #5 0x084f5d88 in simplify_const_relational_operation (code=EQ, mode=SImode, op0=0xfd41966c, op1=<value optimized out>) at /vol/gcc/src/hg/trunk/local/gcc/simplify-rtx.c:4559 #6 0x084e9f5e in simplify_relational_operation (code=EQ, mode=CCZmode, cmp_mode=SImode, op0=0xfed6a1d0, op1=0xfd41966c) at /vol/gcc/src/hg/trunk/local/gcc/simplify-rtx.c:4184 #7 0x084ea736 in simplify_gen_relational (code=EQ, mode=CCZmode, cmp_mode=SImode, op0=0xfed6a1d0, op1=0xfd41966c) at /vol/gcc/src/hg/trunk/local/gcc/simplify-rtx.c:401 #8 0x084ea736 in simplify_gen_relational (code=EQ, mode=CCZmode, cmp_mode=SImode, op0=0xfed6a1f0, op1=0xfd419660) Here's the simplified testcase: extern char t_start[], t_end[], t_size[]; int main(void) { int size = reinterpret_cast<int>(t_size); return (size == t_end - t_start); } ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug rtl-optimization/49720] Infinite recursion compiling gold binary_test.cc testcase 2011-07-12 18:17 [Bug c++/49720] New: Infinite recursion compiling gold binary_test.cc testcase ro at gcc dot gnu.org @ 2011-07-12 20:44 ` rguenth at gcc dot gnu.org 2011-10-28 6:36 ` cltang at gcc dot gnu.org ` (3 subsequent siblings) 4 siblings, 0 replies; 6+ messages in thread From: rguenth at gcc dot gnu.org @ 2011-07-12 20:44 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49720 Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target|i386-pc-solaris2.11 |i386-pc-solaris2.11, | |i?86-*-* Status|UNCONFIRMED |NEW Last reconfirmed| |2011.07.12 20:43:20 Component|c++ |rtl-optimization Ever Confirmed|0 |1 Known to fail| |4.5.3, 4.6.1, 4.7.0 --- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-07-12 20:43:20 UTC --- I think I've also seen this ICE with 4.6 and on i?86-linux. Confirmed on x86_64-darwin with -O2 -m32 back to the 4.5 branch (no idea for earlier releases). ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug rtl-optimization/49720] Infinite recursion compiling gold binary_test.cc testcase 2011-07-12 18:17 [Bug c++/49720] New: Infinite recursion compiling gold binary_test.cc testcase ro at gcc dot gnu.org 2011-07-12 20:44 ` [Bug rtl-optimization/49720] " rguenth at gcc dot gnu.org @ 2011-10-28 6:36 ` cltang at gcc dot gnu.org 2011-12-15 21:59 ` hjl.tools at gmail dot com ` (2 subsequent siblings) 4 siblings, 0 replies; 6+ messages in thread From: cltang at gcc dot gnu.org @ 2011-10-28 6:36 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49720 --- Comment #2 from Chung-Lin Tang <cltang at gcc dot gnu.org> 2011-10-28 06:35:37 UTC --- Author: cltang Date: Fri Oct 28 06:35:31 2011 New Revision: 180604 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=180604 Log: 2011-10-28 Chung-Lin Tang <cltang@codesourcery.com> PR rtl-optimization/49720 * simplify-rtx.c (simplify_relational_operation_1): Detect infinite recursion condition in "(eq/ne (plus x cst1) cst2) simplifies to (eq/ne x (cst2 - cst1))" case. testsuite/ * g++.dg/torture/pr49720.C: New test. Added: trunk/gcc/testsuite/g++.dg/torture/pr49720.C Modified: trunk/gcc/ChangeLog trunk/gcc/simplify-rtx.c trunk/gcc/testsuite/ChangeLog ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug rtl-optimization/49720] Infinite recursion compiling gold binary_test.cc testcase 2011-07-12 18:17 [Bug c++/49720] New: Infinite recursion compiling gold binary_test.cc testcase ro at gcc dot gnu.org 2011-07-12 20:44 ` [Bug rtl-optimization/49720] " rguenth at gcc dot gnu.org 2011-10-28 6:36 ` cltang at gcc dot gnu.org @ 2011-12-15 21:59 ` hjl.tools at gmail dot com 2011-12-16 0:19 ` hjl at gcc dot gnu.org 2012-01-04 0:27 ` pinskia at gcc dot gnu.org 4 siblings, 0 replies; 6+ messages in thread From: hjl.tools at gmail dot com @ 2011-12-15 21:59 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49720 H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hjl.tools at gmail dot com --- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> 2011-12-15 21:59:00 UTC --- *** Bug 51574 has been marked as a duplicate of this bug. *** ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug rtl-optimization/49720] Infinite recursion compiling gold binary_test.cc testcase 2011-07-12 18:17 [Bug c++/49720] New: Infinite recursion compiling gold binary_test.cc testcase ro at gcc dot gnu.org ` (2 preceding siblings ...) 2011-12-15 21:59 ` hjl.tools at gmail dot com @ 2011-12-16 0:19 ` hjl at gcc dot gnu.org 2012-01-04 0:27 ` pinskia at gcc dot gnu.org 4 siblings, 0 replies; 6+ messages in thread From: hjl at gcc dot gnu.org @ 2011-12-16 0:19 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49720 --- Comment #4 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> 2011-12-15 23:50:36 UTC --- Author: hjl Date: Thu Dec 15 23:50:32 2011 New Revision: 182394 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182394 Log: Detect infinite recursion condition gcc/ 2011-12-15 H.J. Lu <hongjiu.lu@intel.com> Backport from mainline. 2011-10-28 Chung-Lin Tang <cltang@codesourcery.com> PR rtl-optimization/49720 * simplify-rtx.c (simplify_relational_operation_1): Detect infinite recursion condition in "(eq/ne (plus x cst1) cst2) simplifies to (eq/ne x (cst2 - cst1))" case. gcc/testsuite/ 2011-12-15 H.J. Lu <hongjiu.lu@intel.com> Backport from mainline. 2011-10-28 Chung-Lin Tang <cltang@codesourcery.com> PR rtl-optimization/49720 * g++.dg/torture/pr49720.C: New test. Added: branches/gcc-4_6-branch/gcc/testsuite/g++.dg/torture/pr49720.C Modified: branches/gcc-4_6-branch/gcc/ChangeLog branches/gcc-4_6-branch/gcc/simplify-rtx.c branches/gcc-4_6-branch/gcc/testsuite/ChangeLog ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug rtl-optimization/49720] Infinite recursion compiling gold binary_test.cc testcase 2011-07-12 18:17 [Bug c++/49720] New: Infinite recursion compiling gold binary_test.cc testcase ro at gcc dot gnu.org ` (3 preceding siblings ...) 2011-12-16 0:19 ` hjl at gcc dot gnu.org @ 2012-01-04 0:27 ` pinskia at gcc dot gnu.org 4 siblings, 0 replies; 6+ messages in thread From: pinskia at gcc dot gnu.org @ 2012-01-04 0:27 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49720 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Known to work| |4.6.3 Resolution| |FIXED Target Milestone|--- |4.6.3 --- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> 2012-01-04 00:26:51 UTC --- Fixed. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-01-04 0:27 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2011-07-12 18:17 [Bug c++/49720] New: Infinite recursion compiling gold binary_test.cc testcase ro at gcc dot gnu.org 2011-07-12 20:44 ` [Bug rtl-optimization/49720] " rguenth at gcc dot gnu.org 2011-10-28 6:36 ` cltang at gcc dot gnu.org 2011-12-15 21:59 ` hjl.tools at gmail dot com 2011-12-16 0:19 ` hjl at gcc dot gnu.org 2012-01-04 0:27 ` pinskia 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).