This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/34091] [4.2/4.3 Regression] ICE in reload_cse_simplify_operands, at postreload.c:392
- From: "dave at hiauly1 dot hia dot nrc dot ca" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 14 Nov 2007 15:57:52 -0000
- Subject: [Bug target/34091] [4.2/4.3 Regression] ICE in reload_cse_simplify_operands, at postreload.c:392
- References: <bug-34091-12387@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from dave at hiauly1 dot hia dot nrc dot ca 2007-11-14 15:57 -------
Subject: Re: New: [4.2/4.3 Regression] ICE in reload_cse_simplify_operands,
at postreload.c:392
> gcc 4.1 can compile the attached source without any problems, but gcc-4.2
> (at -O) and trunk (20070916, at -O2) ICE.
There is no significant difference in the backend between 4.1, 4.2
and the trunk in the handling of QImode and HImode in the floating
registers. What's changed is reload.
> paer% gcc-4.2 -c -O s_texfilter.i
> swrast/s_texfilter.c: In function â??sample_lambda_2dâ??:
> swrast/s_texfilter.c:1420: error: insn does not satisfy its constraints:
> (insn 2621 1258 1259 96 (set (mem/c:HI (plus:SI (reg/f:SI 30 %r30)
> (const_int -474 [0xfffffe26])) [0 S2 A16])
> (reg:HI 68 %fr22)) 53 {*pa.md:3126} (nil)
> (nil))
> swrast/s_texfilter.c:1420: internal compiler error: in
> reload_cse_simplify_operands, at postreload.c:392
The simplest fix is probably not to allow QImode and HImode values
in the floating point registers as there's no instructions that operate
on them.
Dave
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34091