On Wed, 21 Mar 2018, Jakub Jelinek wrote:

> Hi!
> 
> On ia32, we don't support __int128, nor mode (TI) integers, but we do
> support 128-bit __float128 and (generic) vectors containing it.  The result
> of a comparison of such vectors is supposed to be integral vector with the
> same element size, but we really don't want to allow one in this case,
> it would be a loophole for full support of __int128/mode(TI), just do:
> typedef __float128 V __attribute__ ((__vector_size__ (2 * sizeof 
> (__float128))));
> extern V v;
> typedef typeof ((v != 0)[0]) my_int128;
> and suddenly you have __int128.
> 
> The C++ errors out in this case, you can use such floating point vectors,
> but can't use them in comparisons, the C FE instead just segfaulted.
> 
> Fixed thusly, making the C FE consistent with what C++ FE does,
> bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?

OK.

-- 
Joseph S. Myers
jos...@codesourcery.com

Reply via email to