On Mon, 21 Jan 2019, Richard Biener wrote:

> > Sorry, I don't see what you mean here; can you give an example or elaborate?
> 
> when you call a function with v4si signature but want to pass it a result
> from a __mm intrinsic you'd need a temporary union to do the marshalling.
> I think you can use a union argument in the function itself and you can
> elide the temporary then if you use transparent_union.  But I didn't try.

Ah, I see now.  I agree transparent_union ought to work, but today both GCC
and Clang will reject such attempt; I've filed PR 88955 for the GCC issue.

So unfortunately such code would still need a cast or an unnamed temporary,
which may be relatively obvious to the reader.

Alexander

Reply via email to