[Bug target/32951] missed memcpy -> movdqa optimization.

2010-03-09 Thread pluto at agmk dot net
--- Comment #7 from pluto at agmk dot net 2010-03-09 19:34 --- current 4.4.x generates 'movdqa (%rdi), %xmm0' in both cases. 4.2 branch is closed, 4.3 is near to close. can we close this bug as fixed? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32951

[Bug target/32951] missed memcpy -> movdqa optimization.

2010-03-10 Thread rguenth at gcc dot gnu dot org
--- Comment #8 from rguenth at gcc dot gnu dot org 2010-03-10 10:52 --- (In reply to comment #7) > current 4.4.x generates 'movdqa (%rdi), %xmm0' in both cases. > 4.2 branch is closed, 4.3 is near to close. > can we close this bug as fixed? GCC 4.4 creates movdqu (%rdi), %xmm0 for load_

[Bug target/32951] missed memcpy -> movdqa optimization.

2010-03-10 Thread rguenth at gcc dot gnu dot org
--- Comment #9 from rguenth at gcc dot gnu dot org 2010-03-10 10:54 --- Actually it does with the fixed aligned attribute. Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added --

[Bug target/32951] missed memcpy -> movdqa optimization.

2007-07-31 Thread pinskia at gcc dot gnu dot org
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-07-31 18:46 --- (insn 7 6 8 t.c:15 (set (reg:DI 61) (mem:DI (reg/v/f:DI 59 [ buf ]) [0 S8 A8])) -1 (nil)) See A8. So the aligned attribute so not applying where you think it should be. This is how you get the correct alig

[Bug target/32951] missed memcpy -> movdqa optimization.

2007-08-06 Thread pluto at agmk dot net
--- Comment #2 from pluto at agmk dot net 2007-08-06 12:42 --- thanks for ths explanation about aligned attribute. moreover i'm wondering why gcc uses movdqa for unaligned loads? it should use movdqu for *((__m128i*)ptr) and _mm_set_epi8(ptr[15],...,ptr[0]). -- http://gcc.gnu.org/b

[Bug target/32951] missed memcpy -> movdqa optimization.

2007-08-06 Thread pluto at agmk dot net
--- Comment #4 from pluto at agmk dot net 2007-08-06 12:56 --- (In reply to comment #3) > Subject: Re: missed memcpy -> movdqa optimization. > > On 6 Aug 2007 12:42:18 -, pluto at agmk dot net > <[EMAIL PROTECTED]> wrote: > > moreover i'm wondering why gcc uses movdqa for unaligned

[Bug target/32951] missed memcpy -> movdqa optimization.

2007-08-06 Thread pinskia at gmail dot com
--- Comment #3 from pinskia at gmail dot com 2007-08-06 12:43 --- Subject: Re: missed memcpy -> movdqa optimization. On 6 Aug 2007 12:42:18 -, pluto at agmk dot net <[EMAIL PROTECTED]> wrote: > moreover i'm wondering why gcc uses movdqa for unaligned loads? Because __m128i is assu

[Bug target/32951] missed memcpy -> movdqa optimization.

2008-03-31 Thread hjl dot tools at gmail dot com
--- Comment #5 from hjl dot tools at gmail dot com 2008-03-31 15:57 --- Can you use [EMAIL PROTECTED] tmp]$ cat v.c #include __m128i load1( char const* buf ) { return _mm_loadu_si128 ((__m128i const *) buf); } __m128i load2( char const* buf ) { return _mm_load_si128 ((__m128i con

[Bug target/32951] missed memcpy -> movdqa optimization.

2008-05-28 Thread hjl dot tools at gmail dot com
--- Comment #6 from hjl dot tools at gmail dot com 2008-05-29 04:45 --- Type alignment is ignored for call. See PR 35771. -- hjl dot tools at gmail dot com changed: What|Removed |Added ---

Re: [Bug target/32951] missed memcpy -> movdqa optimization.

2007-08-06 Thread Andrew Pinski
On 6 Aug 2007 12:42:18 -, pluto at agmk dot net <[EMAIL PROTECTED]> wrote: > moreover i'm wondering why gcc uses movdqa for unaligned loads? Because __m128i is assumed to be aligned. -- Pinski