https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #19 from CVS Commits ---
The master branch has been updated by Uros Bizjak :
https://gcc.gnu.org/g:ade30fad6669e5f34ca4c587c724d74ecc953175
commit r14-2786-gade30fad6669e5f34ca4c587c724d74ecc953175
Author: Uros Bizjak
Date: Wed
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #18 from Uroš Bizjak ---
(In reply to Richard Biener from comment #17)
> > compiles to:
> >
> > movq%xmm1, %xmm1# 8 [c=4 l=4] *vec_concatv4sf_0
> > movq%xmm0, %xmm0# 9 [c=4 l=4] *vec_concatv
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #17 from Richard Biener ---
(In reply to Uroš Bizjak from comment #16)
> Created attachment 55636 [details]
> Proposed patch
>
> Proposed patch clears the upper half of a V4SFmode operand register before
> all potentially trapping i
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
Uroš Bizjak changed:
What|Removed |Added
Assignee|unassigned at gcc dot gnu.org |ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #15 from jbeulich at suse dot com ---
(In reply to Richard Biener from comment #12)
> _mm_storel_pi could be implemented using __builtin_shufflevector these days.
> Which shows exactly the same issue:
(also related to comment 10) I d
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #14 from Alexander Monakov ---
That seems undesirable in light of comment #4, you'd risk creating a situation
when -fno-trapping-math is unpredictably slower when denormals appear in dirty
upper halves.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #13 from Uroš Bizjak ---
I think we should put all partial vector V2SF operations under
!flag_trapping_math.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #12 from Richard Biener ---
_mm_storel_pi could be implemented using __builtin_shufflevector these days.
Which shows exactly the same issue:
typedef float __attribute__((vector_size(8))) v2sf_t;
typedef float __attribute__((vector_s
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #11 from Richard Biener ---
(In reply to Richard Biener from comment #2)
> The
>
>(insn 13 4 14 2 (set (reg:V2SF 20 xmm0 [orig:91 x2 ] [91])
> (vec_select:V2SF (reg:V4SF 20 xmm0 [94])
> (parallel [
>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #10 from Uroš Bizjak ---
(In reply to Richard Biener from comment #7)
> I guess for the specific usage we need to wrap this in an UNSPEC?
Probably, so a MOVQ xmm, xmm insn should be emitted for __builtin_ia32_storelps
(AKA _mm_store
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #9 from jbeulich at suse dot com ---
(In reply to Richard Biener from comment #1)
> So what's the issue? That this is wrong for -ftrapping-math?
Even without that option MXCSR may be modified for reasons contained to just
the upper
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #8 from Richard Biener ---
OTOH the set isn't noop for the xmm0 hardreg (it zeros the upper parts)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #7 from Richard Biener ---
I guess for the specific usage we need to wrap this in an UNSPEC?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #6 from Richard Biener ---
(In reply to Segher Boessenkool from comment #5)
> (In reply to Richard Biener from comment #2)
> > The
> >
> >(insn 13 4 14 2 (set (reg:V2SF 20 xmm0 [orig:91 x2 ] [91])
> > (vec_select:V2SF (r
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
Segher Boessenkool changed:
What|Removed |Added
CC||segher at gcc dot gnu.org
--- Comm
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
Alexander Monakov changed:
What|Removed |Added
CC||amonakov at gcc dot gnu.org
--- Com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #3 from Uroš Bizjak ---
(In reply to Richard Biener from comment #1)
> So what's the issue? That this is wrong for -ftrapping-math? Or that the
> return value has undefined contents in the upper half? (I don't think the
> ABI spec
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
Richard Biener changed:
What|Removed |Added
Keywords||wrong-code
Last reconfirmed|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110762
--- Comment #1 from Richard Biener ---
So what's the issue? That this is wrong for -ftrapping-math? Or that the
return value has undefined contents in the upper half? (I don't think the
ABI specifies how V2SF is returned)
19 matches
Mail list logo