On Tue, 1 Sep 2020, Jakub Jelinek wrote: > On Tue, Sep 01, 2020 at 01:52:21PM +0200, Richard Biener wrote: > > OK, I'll see to do that (or fixup the RTL expansion side somehow). > > > > Note that clang and gcc disagree about the return value ABI for > > > > typedef double v1df __attribute__((vector_size(8))); > > > > v1df foo (v1df x) > > { > > return x; > > } > > > > where clang returns in %xmm0 while we return by invisible reference. > > The argument is passed the same (via stack). IIRC we've long said > > the backends should look at the types, not the modes when deciding > > how to pass / return things ... > > But many of the backends still do use modes. > If there is an ABI issue, I think we need to find out what the psABI says > and if it is unclear, discuss with psABI authors.
I've filed PR96895 for this. Richard.