public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403
@ 2011-04-28 16:04 rmansfield at qnx dot com
2011-04-29 0:23 ` [Bug target/48806] " kkojima at gcc dot gnu.org
` (8 more replies)
0 siblings, 9 replies; 10+ messages in thread
From: rmansfield at qnx dot com @ 2011-04-28 16:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
Summary: ICE in reload_cse_simplify_operands, at
postreload.c:403
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: rmansfield@qnx.com
Host: i686-linux-gnu
Target: sh4-unknown-linux-gnu
Build: i686-linux-gnu
Created attachment 24129
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24129
preprocessed source
$ ./xgcc -v
Using built-in specs.
COLLECT_GCC=./xgcc
Target: sh4-unknown-linux-gnu
Configured with: ../configure --target=sh4-unknown-linux-gnu
--prefix=/home/ryan/x-tools/sh4-unknown-linux-gnuc
--with-local-prefix=/home/ryan/x-tools/sh4-unknown-linux-gnu/sh4-unknown-linux-gnu/sys-root
--disable-multilib
--with-sysroot=/home/ryan/x-tools/sh4-unknown-linux-gnu/sh4-unknown-linux-gnu/sys-root
--with-newlib --enable-threads=no --disable-shared --enable-__cxa_atexit
--disable-nls --enable-symvers=gnu --enable-languages=c
--enable-target-optspace --enable-checking=rtl --disable-libmudflap
--disable-libssp
Thread model: single
gcc version 4.7.0 20110428 (experimental) [trunk revision 173114] (GCC)
$ ./xgcc -B. ice.i -Oice.i:29:52: warning: 'struct ieee80211com' declared
inside parameter list [enabled by default]
ice.i:29:52: warning: its scope is only this definition or declaration, which
is probably not what you want [enabled by default]
ice.i:61:8: warning: initialization from incompatible pointer type [enabled by
default]
ice.i:61:8: warning: (near initialization for
'ieee80211_cipher_ccmp.ic_attach') [enabled by default]
ice.i:53:14: warning: 'ccmp_attach' used but never defined [enabled by default]
ice.i:54:13: warning: 'ccmp_detach' used but never defined [enabled by default]
ice.i:55:12: warning: 'ccmp_setkey' used but never defined [enabled by default]
ice.i:57:12: warning: 'ccmp_decap' used but never defined [enabled by default]
ice.i:58:12: warning: 'ccmp_enmic' used but never defined [enabled by default]
ice.i:59:12: warning: 'ccmp_demic' used but never defined [enabled by default]
ice.i: In function 'ccmp_encap':
ice.i:66:1: error: insn does not satisfy its constraints:
(insn 157 156 159 3 (set (reg:SI 2 r2)
(reg/f:SI 76 fr12 [231])) ice.i:74 176 {movsi_ie}
(nil))
ice.i:66:1: internal compiler error: in reload_cse_simplify_operands, at
postreload.c:403
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
@ 2011-04-29 0:23 ` kkojima at gcc dot gnu.org
2012-03-03 0:00 ` kkojima at gcc dot gnu.org
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: kkojima at gcc dot gnu.org @ 2011-04-29 0:23 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
Kazumoto Kojima <kkojima at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2011.04.29 00:22:53
CC| |kkojima at gcc dot gnu.org
Ever Confirmed|0 |1
--- Comment #1 from Kazumoto Kojima <kkojima at gcc dot gnu.org> 2011-04-29 00:22:53 UTC ---
Before reload pass, the insns causing problem look like as
...
(insn 131 22 23 4 (set (reg/f:SI 231)
(reg/v/f:SI 167 [ ctx ])) foo.c:74 176 {movsi_ie}
(nil))
(insn 23 131 24 4 (set (reg/f:SI 168 [ D.2106 ])
(mem/s/f/j:SI (post_inc:SI (reg/f:SI 231)) [0 ctx_12->cc_ic+0 S4 A32]))
foo.c:74 176 {movsi_ie}
(expr_list:REG_INC (reg/f:SI 231)
(nil)))
...
When reloading, with -O1, IRA gives fr13 as r231 and these insns
are reloaded like as
(insn 131 154 155 3 (set (reg:SI 1 r1)
(mem/c:SI (plus:SI (reg/f:SI 15 r15)
(const_int 12 [0xc])) [0 %sfp+-52 S4 A32])) foo.c:74 176 {mo
vsi_ie}
(nil))
(insn 155 131 156 3 (set (reg:SI 150 fpul)
(reg:SI 1 r1)) foo.c:74 176 {movsi_ie}
(nil))
(insn 156 155 157 3 (set (reg/f:SI 77 fr13 [231])
(reg:SI 150 fpul)) foo.c:74 176 {movsi_ie}
(nil))
(insn 157 156 159 3 (set (reg:SI 2 r2)
(reg/f:SI 77 fr13 [231])) foo.c:74 176 {movsi_ie}
(nil))
(insn 159 157 160 3 (set (reg:SI 2 r2)
(plus:SI (reg:SI 2 r2)
(const_int 4 [0x4]))) foo.c:74 35 {*addsi3_compact}
(nil))
Insn 157 is illegal because SH has no move insns between frN and
rM directly and the error occurs.
It seems this issue is two-fold, though both are beyond me.
The one problem would be that reload doesn't validate some move
insns generated during POST_INC/PRE_DEC handling. The other one
is that RA chooses a floating point register as the pointer
register with -O1. The later looks like the same issue as PR48596.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
2011-04-29 0:23 ` [Bug target/48806] " kkojima at gcc dot gnu.org
@ 2012-03-03 0:00 ` kkojima at gcc dot gnu.org
2012-03-05 23:45 ` olegendo at gcc dot gnu.org
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: kkojima at gcc dot gnu.org @ 2012-03-03 0:00 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
--- Comment #2 from Kazumoto Kojima <kkojima at gcc dot gnu.org> 2012-03-02 23:59:17 UTC ---
Author: kkojima
Date: Fri Mar 2 23:59:08 2012
New Revision: 184844
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=184844
Log:
PR target/48596
PR target/48806
* config/sh/sh.c (sh_register_move_cost): Increase cost between
GENERAL_REGS and FP_REGS for SImode.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sh/sh.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
2011-04-29 0:23 ` [Bug target/48806] " kkojima at gcc dot gnu.org
2012-03-03 0:00 ` kkojima at gcc dot gnu.org
@ 2012-03-05 23:45 ` olegendo at gcc dot gnu.org
2012-03-06 0:26 ` kkojima at gcc dot gnu.org
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: olegendo at gcc dot gnu.org @ 2012-03-05 23:45 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
Oleg Endo <olegendo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |olegendo at gcc dot gnu.org
--- Comment #3 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-03-05 23:45:02 UTC ---
Would it be OK to add the attachment 24129 to the GCC testsuite?
(Copyrights etc?)
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
` (2 preceding siblings ...)
2012-03-05 23:45 ` olegendo at gcc dot gnu.org
@ 2012-03-06 0:26 ` kkojima at gcc dot gnu.org
2012-03-06 0:33 ` rmansfield at qnx dot com
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: kkojima at gcc dot gnu.org @ 2012-03-06 0:26 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
--- Comment #4 from Kazumoto Kojima <kkojima at gcc dot gnu.org> 2012-03-06 00:26:30 UTC ---
It looks that the testcase came from a FreeBSD kernel code:
http://www.leidinger.net/FreeBSD/dox/net80211/html/d7/d8d/ieee80211__crypto__ccmp_8c_source.html
gcc.c-torture/execute/pr20527-1.c is an example of gcc testcase
which includes a BSD-like license notice, though I'm not sure about
copyright issues. The gcc list would be more appropriate for
the questions about copyrights.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
` (3 preceding siblings ...)
2012-03-06 0:26 ` kkojima at gcc dot gnu.org
@ 2012-03-06 0:33 ` rmansfield at qnx dot com
2012-03-22 21:41 ` kkojima at gcc dot gnu.org
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: rmansfield at qnx dot com @ 2012-03-06 0:33 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
--- Comment #5 from Ryan Mansfield <rmansfield at qnx dot com> 2012-03-06 00:32:59 UTC ---
(In reply to comment #4)
> It looks that the testcase came from a FreeBSD kernel code:
> http://www.leidinger.net/FreeBSD/dox/net80211/html/d7/d8d/ieee80211__crypto__ccmp_8c_source.html
Yes, I can confirm the test case came from BSD code.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
` (4 preceding siblings ...)
2012-03-06 0:33 ` rmansfield at qnx dot com
@ 2012-03-22 21:41 ` kkojima at gcc dot gnu.org
2012-11-07 23:51 ` olegendo at gcc dot gnu.org
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: kkojima at gcc dot gnu.org @ 2012-03-22 21:41 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
--- Comment #6 from Kazumoto Kojima <kkojima at gcc dot gnu.org> 2012-03-22 21:39:51 UTC ---
Author: kkojima
Date: Thu Mar 22 21:39:45 2012
New Revision: 185714
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=185714
Log:
Backported from mainline
2012-03-02 Kaz Kojima <kkojima@gcc.gnu.org>
PR target/48596
PR target/48806
* config/sh/sh.c (sh_register_move_cost): Increase cost between
GENERAL_REGS and FP_REGS for SImode.
Modified:
branches/gcc-4_7-branch/gcc/ChangeLog
branches/gcc-4_7-branch/gcc/config/sh/sh.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
` (5 preceding siblings ...)
2012-03-22 21:41 ` kkojima at gcc dot gnu.org
@ 2012-11-07 23:51 ` olegendo at gcc dot gnu.org
2012-11-07 23:57 ` rmansfield at qnx dot com
2012-11-12 1:26 ` olegendo at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: olegendo at gcc dot gnu.org @ 2012-11-07 23:51 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
--- Comment #7 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-11-07 23:50:09 UTC ---
I've tried to reproduce the test case of this PR on rev 193240 (4.8) with the
change in rev 185714 reverted. It seems that this test case doesn't trigger
the error any more. However, the test case of PR 48596 does still blow up
(with reverted change of rev 185714).
Is it OK to close this PR without adding the test case to the test suite?
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
` (6 preceding siblings ...)
2012-11-07 23:51 ` olegendo at gcc dot gnu.org
@ 2012-11-07 23:57 ` rmansfield at qnx dot com
2012-11-12 1:26 ` olegendo at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: rmansfield at qnx dot com @ 2012-11-07 23:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
--- Comment #8 from Ryan Mansfield <rmansfield at qnx dot com> 2012-11-07 23:56:22 UTC ---
(In reply to comment #7)
> Is it OK to close this PR without adding the test case to the test suite?
That's fine with me.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/48806] ICE in reload_cse_simplify_operands, at postreload.c:403
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
` (7 preceding siblings ...)
2012-11-07 23:57 ` rmansfield at qnx dot com
@ 2012-11-12 1:26 ` olegendo at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: olegendo at gcc dot gnu.org @ 2012-11-12 1:26 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48806
Oleg Endo <olegendo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #9 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-11-12 01:26:14 UTC ---
OK, closed then.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2012-11-12 1:26 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-28 16:04 [Bug target/48806] New: ICE in reload_cse_simplify_operands, at postreload.c:403 rmansfield at qnx dot com
2011-04-29 0:23 ` [Bug target/48806] " kkojima at gcc dot gnu.org
2012-03-03 0:00 ` kkojima at gcc dot gnu.org
2012-03-05 23:45 ` olegendo at gcc dot gnu.org
2012-03-06 0:26 ` kkojima at gcc dot gnu.org
2012-03-06 0:33 ` rmansfield at qnx dot com
2012-03-22 21:41 ` kkojima at gcc dot gnu.org
2012-11-07 23:51 ` olegendo at gcc dot gnu.org
2012-11-07 23:57 ` rmansfield at qnx dot com
2012-11-12 1:26 ` olegendo 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).