On Tue, Dec 04, 2018 at 02:33:59PM -0600, Paul Clarke wrote: > On 12/04/2018 02:16 PM, Segher Boessenkool wrote: > > On Tue, Dec 04, 2018 at 08:59:03AM -0600, Paul Clarke wrote: > >> @@ -1612,7 +1608,8 @@ _mm_bsrli_si128 (__m128i __A, const int __N) > >> const __v16qu zeros = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 > >> }; > >> > >> if (__N < 16) > >> - if (__builtin_constant_p(__N)) > >> + if (__builtin_constant_p(__N) && > >> + __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) > > > > Please just use __LITTLE_ENDIAN__, as the rest of these files already does. > > (More times in this patch; also BIG). > > OK. I was using the ORDER macros based on the GCC documentation at > https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html, which > mentions them and does not mention the shorter ENDIAN boolean macros.
Those are PowerPC ABI, or at least, GCC has defined them in rs6000.c since forever and a bit. The *mm headers already used them, so let's stick to this one style please. > > Do you have new testcases, too? Or is all this caught by existing > > testcases? > > Same testcases. They catch a lot more bugs when they actually run. :-) Segher