Folding in the changes for switching on the availability of the SSE2 instruction set.

From Brendan Bolles (fnordware)

There are many options for Windows SSE2 flags, most of which are not
optimal. We'd rather have a false positive (possibly resulting in a
compiler error that we could then expore further) than a false negative.

_M_IX86_FP == 2 will tell you that the compiler flags are set to SSE2,
but they are often not set and SSE2 would still build properly if we
allow it.

_M_IX86 || _M_X64 would assume that all Intel CPUs had SSE2, but would
incorrectly include the headers on old versions of Visual Studio.

_MSC_VER >= 1300 seems to be the best test. This corresponds to Visual
Studio .NET 2002, the first version that had SSE2.

_M_CEE_PURE also must be off. Google it.