diff --git a/utils/TableGen/IntrinsicEmitter.cpp b/utils/TableGen/IntrinsicEmitter.cpp index 0642f59ace5..9630c926ac5 100644 --- a/utils/TableGen/IntrinsicEmitter.cpp +++ b/utils/TableGen/IntrinsicEmitter.cpp @@ -466,7 +466,9 @@ static void EncodeFixedValueType(MVT::SimpleValueType VT, Sig.push_back(~0U); } +#ifdef _MSC_VER #pragma optimize("",off) // MSVC 2010 optimizer can't deal with this function. +#endif static void EncodeFixedType(Record *R, SmallVectorImpl &Sig) { @@ -532,7 +534,10 @@ static void EncodeFixedType(Record *R, SmallVectorImpl &Sig) { assert(VT != MVT::isVoid); EncodeFixedValueType(VT, Sig); } + +#ifdef _MSC_VER #pragma optimize("",on) +#endif /// ComputeFixedEncoding - If we can encode the type signature for this /// intrinsic into 32 bits, return it. If not, return ~0U.