--- 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
--- 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_
--- 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
--
--- 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
--- 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
--- 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
--- 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
--- 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
--- 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
---
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
10 matches
Mail list logo