https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Andrew Pinski changed:
What|Removed |Added
CC||pobrn at protonmail dot com
--- Comment
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #17 from Peter Cordes ---
(In reply to Andrew Pinski from comment #16)
> >According to Intel (
> > https://software.intel.com/sites/landingpage/IntrinsicsGuide), there are no
> > alignment requirements for _mm_load_sd, _mm_store_sd
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #16 from Andrew Pinski ---
>According to Intel (
> https://software.intel.com/sites/landingpage/IntrinsicsGuide), there are no
> alignment requirements for _mm_load_sd, _mm_store_sd and _mm_loaddup_pd. For
> example, from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Hongtao.liu changed:
What|Removed |Added
CC||crazylht at gmail dot com
--- Comment #15
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Peter Cordes changed:
What|Removed |Added
CC||peter at cordes dot ca
--- Comment #14
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Jakub Jelinek changed:
What|Removed |Added
Target Milestone|8.5 |---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Jakub Jelinek changed:
What|Removed |Added
Target Milestone|8.4 |8.5
--- Comment #13 from Jakub Jelinek
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Jakub Jelinek changed:
What|Removed |Added
Target Milestone|8.3 |8.4
--- Comment #12 from Jakub Jelinek
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Jakub Jelinek changed:
What|Removed |Added
Target Milestone|8.2 |8.3
--- Comment #11 from Jakub Jelinek
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Jakub Jelinek changed:
What|Removed |Added
Target Milestone|8.0 |8.2
--- Comment #10 from Jakub Jelinek
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #9 from Richard Biener ---
unaligned loads from non-aggregates should be fully supported these days even
on strict-align targets where they will result in bitfield extracts.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #8 from Jeffrey Walton ---
(In reply to Jeffrey Walton from comment #0)
> According to Intel
> (https://software.intel.com/sites/landingpage/IntrinsicsGuide), there are no
> alignment requirements for _mm_load_sd, _mm_store_sd and
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #7 from Marc Glisse ---
Unless vectors count as aggregates (more or less), in which case we can ignore
my previous comment.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #6 from Marc Glisse ---
(In reply to Jakub Jelinek from comment #5)
> (In reply to Marc Glisse from comment #3)
> > Workaround: define a typedef for double with
> > __attribute__((__aligned__(1))), and use _mm_set_sd(*(newtype*)p),
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #5 from Jakub Jelinek ---
(In reply to Marc Glisse from comment #3)
> Workaround: define a typedef for double with
> __attribute__((__aligned__(1))), and use _mm_set_sd(*(newtype*)p), that's
> how it will likely be done if we change
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #4 from Jakub Jelinek ---
I don't see how this is related to sanitizer, sanitizer just checks what it
sees.
Say _mm_load_sd is implemented as
/* Create a vector with element 0 as *P and the rest zero. */
extern __inline __m128d
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #3 from Marc Glisse ---
Copying from
https://gcc.gnu.org/ml/gcc-help/2017-12/msg00031.html
"The way _mm_load_sd is currently implemented in gcc, yes, sanitizers are right
to complain. Intel could have named the thing _mm_loadu_sd if
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
Martin Liška changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84508
--- Comment #1 from Jeffrey Walton ---
__m128d is a tad bit cleaner. It does not require the casts.
$ cat test.c
#include
int main(int argc, char* argv[])
{
unsigned char t[16+1];
__m128d x = _mm_load_sd((const double *)(t+1));
19 matches
Mail list logo