diff options
author | Chris Lattner <sabre@nondot.org> | 2007-11-08 04:27:23 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2007-11-08 04:27:23 +0000 |
commit | 74a0c77ce6cf5fbcaccbaeda35dfb2ff7c02c83e (patch) | |
tree | 2eaea3710a0dc57e7bcc9ac229d23fb8db5167c5 /Rewrite/Rewriter.cpp | |
parent | 116c08938409b23704b60dd1a78a9243e3621407 (diff) |
use std::copy instead of memcpy for abstraction.
Disable rewrite-tabs. This speeds up processing of the commentified huge
crazy testcase steve gave me from 20s to 6.6s in a release build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43880 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'Rewrite/Rewriter.cpp')
-rw-r--r-- | Rewrite/Rewriter.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Rewrite/Rewriter.cpp b/Rewrite/Rewriter.cpp index f068f68ae9..5e6374e9b9 100644 --- a/Rewrite/Rewriter.cpp +++ b/Rewrite/Rewriter.cpp @@ -121,7 +121,8 @@ void RewriteBuffer::ReplaceText(unsigned OrigOffset, unsigned OrigLength, assert(RealOffset+OrigLength <= Buffer.size() && "Invalid location"); // Overwrite the common piece. - memcpy(&Buffer[RealOffset], NewStr, std::min(OrigLength, NewLength)); + std::copy(NewStr, NewStr+std::min(OrigLength, NewLength), + Buffer.begin()+RealOffset); // If replacing without shifting around, just overwrite the text. if (OrigLength == NewLength) |