Bug 16974 - could not split insn (ice in final_scan_insn, final.c)
Summary: could not split insn (ice in final_scan_insn, final.c)
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: target (show other bugs)
Version: 3.4.1
: P2 normal
Target Milestone: 3.4.2
Assignee: Richard Henderson
URL:
Keywords: ice-on-valid-code
Depends on:
Blocks:
 
Reported: 2004-08-10 21:41 UTC by Nicolás Lichtmaier
Modified: 2004-08-26 14:10 UTC (History)
1 user (show)

See Also:
Host: alphaev68-dec-osf4.0g
Target: alphaev68-dec-osf4.0g
Build: alphaev68-dec-osf4.0g
Known to work:
Known to fail:
Last reconfirmed: 2004-08-26 09:27:29


Attachments
testcase (32.80 KB, text/plain)
2004-08-10 21:50 UTC, Nicolás Lichtmaier
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nicolás Lichtmaier 2004-08-10 21:41:18 UTC
This is the error.

gbAplicacionTopologicaIncremento.pc: In function `gbAplicacionTopologicaIncremento':
gbAplicacionTopologicaIncremento.pc:2744: error: could not split insn
(insn 14964 27260 14963 gbAplicacionTopologicaIncremento.pc:2256 (set (reg:DI 18
$18)
        (plus:DI (reg/f:DI 30 $30)
            (const_int 65536 [0x10000]))) 8 {*adddi_fp_hack}
(insn_list:REG_DEP_ANTI 14934 (insn_list:REG_DEP_OUTPUT 14930 (nil)))
    (nil))
gbAplicacionTopologicaIncremento.pc:2744: internal compiler error: in
final_scan_insn, at final.c:2429

It looks like bug 15433, which is fixed in 3.5, but I'm having this problem with
3.4.1. Do you need mee to post some of the code?
Comment 1 Nicolás Lichtmaier 2004-08-10 21:43:27 UTC
It doesn't happen with -O0.
Comment 2 Andrew Pinski 2004-08-10 21:44:11 UTC
yes read http://gcc.gnu.org/bugs.html for instructions.
Comment 3 Nicolás Lichtmaier 2004-08-10 21:50:28 UTC
Created attachment 6913 [details]
testcase

This is the error for this testcase:

$ LANG=C gcc -c -o q.o -g -O  q.c
q.c:676: warning: conflicting types for built-in function 'bzero'
q.c:834: warning: conflicting types for built-in function 'bcmp'
q.c:835: warning: conflicting types for built-in function 'bcopy'
q.c: In function `gbAplicacionTopologicaIncremento':
q.c:10419: error: could not split insn
(insn 22960 16703 23988 (set (reg:DI 3 $3)
	(plus:DI (reg/f:DI 30 $30)
	    (const_int 65536 [0x10000]))) 8 {*adddi_fp_hack} (nil)
    (expr_list:REG_EQUIV (plus:DI (reg/f:DI 30 $30)
	    (const_int 65536 [0x10000]))
	(nil)))
q.c:10419: internal compiler error: in final_scan_insn, at final.c:2429
Comment 4 GCC Commits 2004-08-26 10:02:31 UTC
Subject: Bug 16974

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	rth@gcc.gnu.org	2004-08-26 10:02:23

Modified files:
	gcc            : ChangeLog 
	gcc/config/alpha: alpha.md 

Log message:
	PR target/16974
	* config/alpha/alpha.md (adddi_fp_hack): Don't rely on splitting
	if the constant satisfies add_operand.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.598&r2=2.2326.2.599
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/alpha.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.215.6.4&r2=1.215.6.5

Comment 5 GCC Commits 2004-08-26 10:03:48 UTC
Subject: Bug 16974

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	rth@gcc.gnu.org	2004-08-26 10:03:39

Modified files:
	gcc            : ChangeLog 
	gcc/config/alpha: alpha.md 

Log message:
	PR target/16974
	* config/alpha/alpha.md (adddi_fp_hack): Don't rely on splitting
	if the constant satisfies add_operand.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.5102&r2=2.5103
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/alpha/alpha.md.diff?cvsroot=gcc&r1=1.224&r2=1.225

Comment 6 Richard Henderson 2004-08-26 10:07:33 UTC
http://gcc.gnu.org/ml/gcc-patches/2004-08/msg02142.html