HAVE_SSE42 is used in two places:
1) wsutil/ws_mempbrk_sse42.c, where it controls whether to build that file at all;
2) wsutil/ws_mempbrk.c, where it controls whether to check whether the CPU has SSE 4.2 and, if it does, call the SSE 4.2 version of the code.
So what HAVE_SSE42 really seems to mean is "does the compiler support the intrinsics used in wsutil/ws_mempbrk_sse42.c?"
Should we, instead, check for compiler support for those intrinsics?
And will the compiler generate code for those intrinsics, using the SSE 4.2 instructions, even if you haven't told it, with a command-line option, to generate SSE 4.2 code in general? Or does the compiler not do a good job of supporting choosing whether to use SSE 4.2 instructions at run time rather than at compile time?