http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49927
Uros Bizjak <ubizjak at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target| |i686-pc-linux-gnu
Status|UNCONFIRMED |NEW
Keywords| |ra
Last reconfirmed| |2011.08.01 08:07:57
Component|c |rtl-optimization
CC| |vmakarov at gcc dot gnu.org
Ever Confirmed|0 |1
Summary|ice in spill_failure, at |[4.7 Regression] ice in
|reload1.c:2120 |spill_failure, at
| |reload1.c:2120
Target Milestone|--- |4.7.0
Known to fail| |4.7.0
--- Comment #1 from Uros Bizjak <ubizjak at gmail dot com> 2011-08-01 08:07:58
UTC ---
Register allocator failure:
We have:
(insn 9 8 10 2 (set (mem/s/j:QI
(plus:SI (plus:SI (subreg:SI (reg:DI 60 [ g_91.1 ]) 0)
(subreg:SI (reg:DI 59 [ g_91.0 ]) 0))
(symbol_ref:SI ("g_73") <var_decl 0x2b6b55451140 g_73>)) [0
g_73 S1 A8])
(reg:QI 62 [ D.1999 ])) pr49927.c:6 66 {*movqi_internal}
(nil))
Reloads for insn # 9
Reload 0: reload_in (DI) = (reg:DI 60 [ g_91.1 ])
GENERAL_REGS, RELOAD_FOR_OPERAND_ADDRESS (opnum = 0)
reload_in_reg: (reg:DI 60 [ g_91.1 ])
Reload 1: reload_in (DI) = (reg:DI 59 [ g_91.0 ])
INDEX_REGS, RELOAD_FOR_OPERAND_ADDRESS (opnum = 0)
reload_in_reg: (reg:DI 59 [ g_91.0 ])
Reload 2: reload_in (QI) = (reg:QI 4 si [orig:62 D.1999 ] [62])
Q_REGS, RELOAD_FOR_INPUT (opnum = 1)
reload_in_reg: (reg:QI 4 si [orig:62 D.1999 ] [62])
Register si is not valid for QImode on 32bit x86.
GCC 4.4 works OK, so confirmed regression on x86_64-pc-linux-gnu with -O0 -m32.