[Bug rtl-optimization/19680] sub-optimial register allocation with sse
tbptbp at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Jan 31 20:35:00 GMT 2005
------- Additional Comments From tbptbp at gmail dot com 2005-01-31 20:35 -------
Hmm, there's something fishy with _mm_set1_epi32.
With your patches there's no stack copy anymore but, with
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19714 testcase, i get:
00401080 <eliminated(int)>:
401080: 66 0f 6e 4c 24 04 movd 0x4(%esp),%xmm1
401086: 66 0f 70 c1 00 pshufd $0x0,%xmm1,%xmm0
40108b: c3 ret
00401090 <not_eliminated(int const*)>:
401090: 8b 44 24 04 mov 0x4(%esp),%eax
401094: 66 0f 6e 08 movd (%eax),%xmm1
401098: 66 0f 70 c1 00 pshufd $0x0,%xmm1,%xmm0
40109d: c3 ret
00401050 <not_eliminated_bis(int const&)>:
401050: 8b 44 24 04 mov 0x4(%esp),%eax
401054: 66 0f 6e 08 movd (%eax),%xmm1
401058: 66 0f 70 c1 00 pshufd $0x0,%xmm1,%xmm0
40105d: c3 ret
... and that's quite bogus :)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19680
More information about the Gcc-bugs
mailing list