From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27501 invoked by alias); 1 Jul 2012 09:22:33 -0000 Received: (qmail 27490 invoked by uid 22791); 1 Jul 2012 09:22:32 -0000 X-SWARE-Spam-Status: No, hits=-4.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,KHOP_THREADED,TW_ZJ X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 01 Jul 2012 09:22:19 +0000 From: "ubizjak at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/52983] [4.8 Regression] internal compiler error: in df_uses_record, at df-scan.c:3243 Date: Sun, 01 Jul 2012 09:22:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: rtl-optimization X-Bugzilla-Keywords: ice-on-valid-code X-Bugzilla-Severity: normal X-Bugzilla-Who: ubizjak at gmail dot com X-Bugzilla-Status: ASSIGNED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: aoliva at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.8.0 X-Bugzilla-Changed-Fields: CC Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2012-07/txt/msg00001.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D52983 Uros Bizjak changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ubizjak at gmail dot com --- Comment #6 from Alexandre Oliva 2012-06-28 = 07:39:33 UTC --- Author: aoliva Date: Thu Jun 28 07:39:25 2012 New Revision: 189036 URL: http://gcc.gnu.org/viewcvs?root=3Dgcc&view=3Drev&rev=3D189036 Log: PR debug/53740 PR debug/52983 PR debug/48866 * dce.c (word_dce_process_block): Check whether inserting debug temps are needed even for needed insns. (dce_process_block): Likewise. * df-problems.c (dead_debug_add): Add comment about multi-regs. (dead_debug_insert_temp): Likewise. Don't subreg when we're setting fewer regs than a multi-reg requires. Modified: trunk/gcc/ChangeLog trunk/gcc/dce.c trunk/gcc/df-problems.c --- Comment #7 from Uros Bizjak 2012-07-01 09:22= :16 UTC --- I have hit similar ICE on i64-linux-gnu: (xgcc (GCC) 4.8.0 20120701 (experimental) [trunk revision 189100]) crosscompiler from x86_64-pc-linux-gnu to ia64-linux-gnu: ../../../gcc-svn/trunk/libgfortran/generated/iall_i2.c: In function =E2=80= =98iall_i2=E2=80=99: ../../../gcc-svn/trunk/libgfortran/generated/iall_i2.c:187:1: internal comp= iler error: in df_uses_record, at df-scan.c:3303 Please submit a full bug report, with preprocessed source if appropriate. Breakpoint 1, internal_error (gmsgid=3Dgmsgid@entry=3D0xd958ea "in %s, at %= s:%d") at ../../gcc-svn/trunk/gcc/diagnostic.c:951 951 { (gdb) bt #0 internal_error (gmsgid=3Dgmsgid@entry=3D0xd958ea "in %s, at %s:%d") at ../../gcc-svn/trunk/gcc/diagnostic.c:951 #1 0x0000000000bd8804 in fancy_abort (file=3Dfile@entry=3D0xc681c8 "../../gcc-svn/trunk/gcc/df-scan.c", line=3Dline@entry=3D3303, function=3Dfunction@entry=3D0xc68bbe "df_uses_record") at ../../gcc-svn/trunk/gcc/diagnostic.c:1011 #2 0x00000000005ce81b in df_uses_record (collection_rec=3Dcollection_rec@entry=3D0x7fffffffd780, loc=3D, ref_type=3DDF_REF_REG_MEM_LOAD, ref_type@entry=3DDF_REF_REG_USE,=20 bb=3Dbb@entry=3D0x7ffff12be380, insn_info=3Dinsn_info@entry=3D0x134d040, flags=3D, flags@entry=3D0) at ../../gcc-svn/trunk/gcc/df-sca= n.c:3303 #3 0x00000000005ce96f in df_insn_refs_collect (collection_rec=3Dcollection_rec@entry=3D0x7fffffffd780, bb=3Dbb@entry=3D0x7ffff12be380, insn_info=3D0x134d040) at ../../gcc-svn/trunk/gcc/df-scan.c:3510 #4 0x00000000005cf4f0 in df_insn_rescan (insn=3Dinsn@entry=3D0x7ffff0f3de5= 8) at ../../gcc-svn/trunk/gcc/df-scan.c:1280 #5 0x000000000061a251 in add_insn_before (insn=3D0x7ffff0f3de58, before=3Dbefore@entry=3D0x7ffff0f30630, bb=3D, bb@entry=3D0x= 0) at ../../gcc-svn/trunk/gcc/emit-rtl.c:3883 #6 0x000000000061a3b2 in emit_pattern_before_noloc (x=3D0x7ffff0f3fae0, before=3D0x7ffff0f30630, last=3D, bb=3D0x0, make_raw=3D) at ../../gcc-svn/trunk/gcc/emit-rtl.c:4161 #7 0x000000000061a42c in emit_pattern_before_setloc (pattern=3D0x7ffff0f3f= ae0, before=3D, loc=3D112, insnp=3D, make_raw=3D) at ../../gcc-svn/trunk/gcc/emit-rtl.c:4528 #8 0x00000000005c7367 in dead_debug_insert_temp (debug=3Ddebug@entry=3D0x7fffffffd920, uregno=3D, insn=3Dinsn@entry=3D0x7ffff0f30630,=20 where=3Dwhere@entry=3DDEBUG_TEMP_BEFORE_WITH_VALUE) at ../../gcc-svn/trunk/gcc/df-problems.c:3349 #9 0x0000000000afef4e in dce_process_block (au=3D0x136a928, redo_out=3D, bb=3D0x7ffff12be380) at ../../gcc-svn/trunk/gcc/dce.c:976 #10 fast_dce (word_level=3Dword_level@entry=3D0 '\000') at ../../gcc-svn/trunk/gcc/dce.c:1044 (gdb) f 2 #2 0x00000000005ce81b in df_uses_record (collection_rec=3Dcollection_rec@entry=3D0x7fffffffd780, loc=3D, ref_type=3DDF_REF_REG_MEM_LOAD, ref_type@entry=3DDF_REF_REG_USE,=20 bb=3Dbb@entry=3D0x7ffff12be380, insn_info=3Dinsn_info@entry=3D0x134d040, flags=3D, flags@entry=3D0) at ../../gcc-svn/trunk/gcc/df-sca= n.c:3303 3303 gcc_assert (!DEBUG_INSN_P (insn_info->insn)); (gdb) p debug_rtx (insn_info->insn) (debug_insn 685 441 442 36 (var_location:HI D#33 (mem:HI (post_modify:DI (reg/v/f:DI 450 [ src ]) (plus:DI (reg/v/f:DI 450 [ src ]) (reg:DI 639 [ pretmp.129 ]))) [6 *src_178+0 S2 A16])) -1 (nil)) $1 =3D void