On Sat, Nov 8, 2014 at 1:49 PM, Marc Glisse <marc.gli...@inria.fr> wrote: > Hello, > > this patch uses &|^ for 128 bit integer vectors. I am doing the operations > in type __v2du because __builtin_ia32_pand128 was apparently taking __v2di > arguments, but using __v4su or any other should be equivalent. Even __int128 > would in principle be ok, but since it is not usually stored in a vector > register, it seems more likely to generate unexpected code (and we don't > have __int256 so it would be inconsistent with other sizes).
Let's keep v2du for now. > Regtested with patch 3/n. Ok for the branch? > > After that, I will post a last patch to generalize &|^ to sizes 256 and 512, > and I think that will be enough for gcc-5, we should discuss merging. "< > > == abs min max" can wait until gcc-6, possibly after getting some feedback > about +-*/&|^. > > > > 2014-11-10 Marc Glisse <marc.gli...@inria.fr> > > * config/i386/emmintrin.h (_mm_and_si128, _mm_or_si128, > _mm_xor_si128): > > Use vector extensions instead of builtins. OK. Thanks, Uros.