[Bug target/60969] [4.9/4.10 Regression] ICE in output_129 in MMXMOV of mode MODE_SF for march=pentium4
hjl.tools at gmail dot com
gcc-bugzilla@gcc.gnu.org
Fri Apr 25 16:59:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60969
--- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Andrew Pinski from comment #3)
> How did mmx usage get into the code when user did not use mmx. Mmx should
> not be used by the autovectorizer at all.
For
(insn 26 25 27 4 (set (reg:SF 147 [ D.2421 ])
(float:SF (reg/v:SI 154 [ z ]))) 203 {*floatsisf2_i387}
(expr_list:REG_DEAD (reg/v:SI 154 [ z ])
(nil)))
(insn 27 26 28 4 (set (reg:SF 148 [ D.2421 ])
(float:SF (reg/v:SI 153 [ y ]))) 203 {*floatsisf2_i387}
(nil))
LRA generates
(insn 26 24 166 4 (set (reg:SF 9 st(1) [orig:147 D.2421 ] [147])
(float:SF (mem/c:SI (plus:SI (reg/f:SI 7 sp)
(const_int 100 [0x64])) [5 z+0 S4 A32]))) 203
{*floatsisf2_i387}
(nil))
(insn 166 26 167 4 (set (mem/c:SF (plus:SI (reg/f:SI 7 sp)
(const_int 20 [0x14])) [6 %sfp+-28 S4 A32])
(reg:SF 9 st(1) [orig:147 D.2421 ] [147])) 129 {*movsf_internal}
(nil))
(insn 167 166 169 4 (set (reg:SF 29 mm0 [orig:147 D.2421 ] [147])
(mem/c:SF (plus:SI (reg/f:SI 7 sp)
(const_int 20 [0x14])) [6 %sfp+-28 S4 A32])) 129
{*movsf_internal}
(nil))
(insn 169 167 27 4 (set (mem/c:SI (plus:SI (reg/f:SI 7 sp)
(const_int 20 [0x14])) [6 %sfp+-28 S4 A32])
(reg/v:SI 6 bp [orig:153 y ] [153])) 90 {*movsi_internal}
(nil))
(insn 27 169 168 4 (set (reg:SF 10 st(2) [orig:148 D.2421 ] [148])
(float:SF (mem/c:SI (plus:SI (reg/f:SI 7 sp)
(const_int 20 [0x14])) [6 %sfp+-28 S4 A32]))) 203
{*floatsisf2_i387}
(nil))
to load a SFmode value into mm0 for later use.
More information about the Gcc-bugs
mailing list