[Bug target/67609] [5/6 Regression] Generates wrong code for SSE2 _mm_load_pd

2015-09-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67609 --- Comment #5 from Richard Biener --- It does the "correct" thing for #include __m128d reg; void set_lower(float b) { float v[4]; _mm_store_pd((double *)v, reg); v[0] = b; reg = _mm_load_pd((double *)v); }

[Bug target/67609] [5/6 Regression] Generates wrong code for SSE2 _mm_load_pd

2015-09-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67609 --- Comment #4 from Richard Biener --- (In reply to Uroš Bizjak from comment #3) > The doc says: > > When used as an lvalue, 'subreg' is a word-based accessor. > Storing to a 'subreg' modifies all the words of REG that >

[Bug target/67609] [5/6 Regression] Generates wrong code for SSE2 _mm_load_pd

2015-09-17 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67609 --- Comment #3 from Uroš Bizjak --- The doc says: When used as an lvalue, 'subreg' is a word-based accessor. Storing to a 'subreg' modifies all the words of REG that overlap the 'subreg', but it leaves the other wor

[Bug target/67609] [5/6 Regression] Generates wrong code for SSE2 _mm_load_pd

2015-09-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67609 Richard Biener changed: What|Removed |Added Target||x86_64-*-* Status|UNCONFIRM