r235169 - in /trunk/gcc: ChangeLog config/i386/...
hjl@gcc.gnu.org
hjl@gcc.gnu.org
Mon Apr 18 19:40:00 GMT 2016
Author: hjl
Date: Mon Apr 18 19:40:30 2016
New Revision: 235169
URL: https://gcc.gnu.org/viewcvs?rev=235169&root=gcc&view=rev
Log:
Optimize load double into xmm with zero_extend
"movq" should used to load double into xmm register with zero_extend:
(set (reg:V2DF 90)
(vec_concat:V2DF (reg/v:DF 88 [ d ])
(const_double:DF 0.0 [0x0.0p+0])))
Unlike "movsd", which only works with load from memory, "movq" works
with both memory and xmm register.
gcc/
PR target/70708
* config/i386/sse.md (sse2_loadlpd): Accept load from "xm" and
replace %vmovsd with "%vmovq".
(vec_concatv2df): Likewise.
gcc/testsuite/
PR target/70708
* gcc.target/i386/pr70708.c: New test.
Added:
trunk/gcc/testsuite/gcc.target/i386/pr70708.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/sse.md
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-cvs
mailing list