While looking at adding intrinsic function descriptions, I found some
oddities in the conditionals. I've fiddled with some of them. This is
not a complete audit.
Two headers have been changed to require only immintrin.h and not
x86intrin.h; this conforms to which header actually includes them, and with
Intel documentation.
One function in bmi2intrin.h was defined only in 32-bit mode, for no
apparent reason; I fixed that.
clzerointrin.h is included from x86intrin.h, so I made it not check for immintrin.h.
This is an AMD only instruction so there's no Intel documentation to check against.