This is an initial exploratory patch towards making some (basic initialization and arithmetic) SSE/AVX intrinsics usable in constant expressions.
I've only touched the SSE1 intrinsics that we can do so far - if people are happy with the approach I'll extend the patch to cover the equivalent SSE2->AVX512 intrinsics/types.
My main concern is how best to test these - all we're doing so far is checking that they will compile, which might be enough for now?
A later patch will have to address how to support builtin_shufflevector/builtin_convertvector and element accessors.
clang-format: please reformat the code