public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/46843] New: ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure when using doubles
@ 2010-12-07 23:10 zsojka at seznam dot cz
2012-07-13 15:08 ` [Bug rtl-optimization/46843] ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure ubizjak at gmail dot com
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: zsojka at seznam dot cz @ 2010-12-07 23:10 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46843
Summary: ICE: in spill_failure, at reload1.c:2157
-fschedule-insns -fsched-pressure when using doubles
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: zsojka@seznam.cz
Host: x86_64-pc-linux-gnu
Target: x86_64-pc-linux-gnu
Created attachment 22677
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22677
reduced testcase
Compiler output:
$ gcc -O -fschedule-insns -fsched-pressure pr46843.c
pr46843.c: In function 'foo':
pr46843.c:9:1: error: unable to find a register to spill in class 'CREG'
pr46843.c:9:1: error: this is the insn:
(insn 19 50 9 2 (parallel [
(set (reg/v:SI 0 ax [orig:63 n ] [63])
(ashift:SI (reg:SI 0 ax [84])
(reg:QI 37 r8 [ s ])))
(clobber (reg:CC 17 flags))
]) pr46843.c:3 497 {*ashlsi3_1}
(expr_list:REG_DEAD (reg:SI 0 ax [84])
(expr_list:REG_DEAD (reg:QI 37 r8 [ s ])
(expr_list:REG_UNUSED (reg:CC 17 flags)
(nil)))))
pr46843.c:9:1: internal compiler error: in spill_failure, at reload1.c:2105
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
-mdispatch-scheduler -march=bdver1 doesn't help in this case (opposing to
PR46829)
Tested revisions:
r167471 - fail
4.5 r166509 - fail
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug rtl-optimization/46843] ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure
2010-12-07 23:10 [Bug rtl-optimization/46843] New: ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure when using doubles zsojka at seznam dot cz
@ 2012-07-13 15:08 ` ubizjak at gmail dot com
2012-09-01 14:30 ` uros at gcc dot gnu.org
2012-09-05 8:17 ` ubizjak at gmail dot com
2 siblings, 0 replies; 4+ messages in thread
From: ubizjak at gmail dot com @ 2012-07-13 15:08 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46843
Uros Bizjak <ubizjak at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-07-13
Target Milestone|--- |4.6.4
Summary|ICE: in spill_failure, at |ICE: in spill_failure, at
|reload1.c:2157 |reload1.c:2157
|-fschedule-insns |-fschedule-insns
|-fsched-pressure when using |-fsched-pressure
|doubles |
Ever Confirmed|0 |1
Known to fail| |4.7.2, 4.8.0
--- Comment #1 from Uros Bizjak <ubizjak at gmail dot com> 2012-07-13 15:07:28 UTC ---
Confirmed.
sched1 pass is moving insn that reads CX hard register after the shift:
(insn 20 7 10 2 (parallel [
(set (reg/v:SI 64 [ n ])
(ashift:SI (reg:SI 85)
(reg:QI 37 r8 [ s ])))
(clobber (reg:CC 17 flags))
]) pr46843.c:3 498 {*ashlsi3_1}
(expr_list:REG_DEAD (reg:SI 85)
(expr_list:REG_DEAD (reg:QI 37 r8 [ s ])
(expr_list:REG_UNUSED (reg:CC 17 flags)
(nil)))))
(insn 10 20 13 2 (set (reg/v/f:DI 81 [ d2 ])
(reg:DI 2 cx [ d2 ])) pr46843.c:2 63 {*movdi_internal_rex64}
(expr_list:REG_DEAD (reg:DI 2 cx [ d2 ])
(nil)))
Probably not a good idea to increase live ranges of hard registers before
register allocation pass.
This PR is somehow related to PR 53942, where combine pass increased live range
of CX register after shift insn.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug rtl-optimization/46843] ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure
2010-12-07 23:10 [Bug rtl-optimization/46843] New: ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure when using doubles zsojka at seznam dot cz
2012-07-13 15:08 ` [Bug rtl-optimization/46843] ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure ubizjak at gmail dot com
@ 2012-09-01 14:30 ` uros at gcc dot gnu.org
2012-09-05 8:17 ` ubizjak at gmail dot com
2 siblings, 0 replies; 4+ messages in thread
From: uros at gcc dot gnu.org @ 2012-09-01 14:30 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46843
--- Comment #2 from uros at gcc dot gnu.org 2012-09-01 14:29:51 UTC ---
Author: uros
Date: Sat Sep 1 14:29:45 2012
New Revision: 190847
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190847
Log:
PR target/46829
PR target/46843
* config/i386/i386.c (ix86_legitimate_combined_insn): New function.
(TARGET_LEGITIMATE_COMBINED_INSN): New macro.
testsuite/ChangeLog:
PR target/46829
PR target/46843
* gcc.target/i386/pr46829.c: New test.
* gcc.target/i386/pr46843.c: Ditto.
Added:
trunk/gcc/testsuite/gcc.target/i386/pr46829.c
trunk/gcc/testsuite/gcc.target/i386/pr46843.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.c
trunk/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug rtl-optimization/46843] ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure
2010-12-07 23:10 [Bug rtl-optimization/46843] New: ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure when using doubles zsojka at seznam dot cz
2012-07-13 15:08 ` [Bug rtl-optimization/46843] ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure ubizjak at gmail dot com
2012-09-01 14:30 ` uros at gcc dot gnu.org
@ 2012-09-05 8:17 ` ubizjak at gmail dot com
2 siblings, 0 replies; 4+ messages in thread
From: ubizjak at gmail dot com @ 2012-09-05 8:17 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46843
Uros Bizjak <ubizjak at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Target Milestone|4.6.4 |4.8.0
Known to fail|4.8.0 |
--- Comment #3 from Uros Bizjak <ubizjak at gmail dot com> 2012-09-05 08:16:32 UTC ---
Fixed for 4.8.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-09-05 8:17 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-12-07 23:10 [Bug rtl-optimization/46843] New: ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure when using doubles zsojka at seznam dot cz
2012-07-13 15:08 ` [Bug rtl-optimization/46843] ICE: in spill_failure, at reload1.c:2157 -fschedule-insns -fsched-pressure ubizjak at gmail dot com
2012-09-01 14:30 ` uros at gcc dot gnu.org
2012-09-05 8:17 ` ubizjak at gmail dot com
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).