speed up -emit-html in a release build by 6.5% by avoiding std::string.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49764 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Driver/HTMLPrint.cpp b/Driver/HTMLPrint.cpp
index 981be85..165689d 100644
--- a/Driver/HTMLPrint.cpp
+++ b/Driver/HTMLPrint.cpp
@@ -56,8 +56,10 @@
// Emit the HTML.
if (const RewriteBuffer *RewriteBuf = R.getRewriteBufferFor(FileID)) {
- std::string S(RewriteBuf->begin(), RewriteBuf->end());
- printf("%s\n", S.c_str());
+ char *Buffer = (char*)malloc(RewriteBuf->size());
+ std::copy(RewriteBuf->begin(), RewriteBuf->end(), Buffer);
+ fwrite(Buffer, 1, RewriteBuf->size(), stdout);
+ free(Buffer);
}
}