diff options
-rw-r--r-- | lib/Rewrite/RewriteModernObjC.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Rewrite/RewriteModernObjC.cpp b/lib/Rewrite/RewriteModernObjC.cpp index fed50b1a3d..a164f74646 100644 --- a/lib/Rewrite/RewriteModernObjC.cpp +++ b/lib/Rewrite/RewriteModernObjC.cpp @@ -6337,6 +6337,8 @@ void RewriteModernObjC::RewriteObjCClassMetaData(ObjCImplementationDecl *IDecl, void RewriteModernObjC::RewriteMetaDataIntoBuffer(std::string &Result) { int ClsDefCount = ClassImplementation.size(); int CatDefCount = CategoryImplementation.size(); + if (LangOpts.MicrosoftExt) + Result += "#pragma optimize(\"g\", on)"; // For each implemented class, write out all its meta data. for (int i = 0; i < ClsDefCount; i++) @@ -6406,6 +6408,8 @@ void RewriteModernObjC::RewriteMetaDataIntoBuffer(std::string &Result) { } Result += "};\n"; } + if (LangOpts.MicrosoftExt) + Result += "#pragma optimize(\"\", on)\n"; } void RewriteModernObjC::WriteImageInfo(std::string &Result) { |