Author: yrnkrn Date: Fri Jul 3 04:16:20 2015 New Revision: 241330 URL: http://llvm.org/viewvc/llvm-project?rev=241330&view=rev Log: Replace some const std::string & with llvm::StringRef or std::string and std::move to avoid implicit std::string construction.
Patch by Eugene Kosov. Modified: clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h clang-tools-extra/trunk/clang-rename/RenamingAction.cpp clang-tools-extra/trunk/clang-rename/RenamingAction.h clang-tools-extra/trunk/modularize/Modularize.cpp clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h Modified: clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h?rev=241330&r1=241329&r2=241330&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h (original) +++ clang-tools-extra/trunk/clang-modernize/LoopConvert/StmtAncestor.h Fri Jul 3 04:16:20 2015 @@ -170,9 +170,9 @@ private: class DeclFinderASTVisitor : public clang::RecursiveASTVisitor<DeclFinderASTVisitor> { public: - DeclFinderASTVisitor(const std::string &Name, - const StmtGeneratedVarNameMap *GeneratedDecls) : - Name(Name), GeneratedDecls(GeneratedDecls), Found(false) { } + DeclFinderASTVisitor(std::string Name, + const StmtGeneratedVarNameMap *GeneratedDecls) + : Name(std::move(Name)), GeneratedDecls(GeneratedDecls), Found(false) {} /// Attempts to find any usages of variables name Name in Body, returning /// true when it is used in Body. This includes the generated loop variables Modified: clang-tools-extra/trunk/clang-rename/RenamingAction.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-rename/RenamingAction.cpp?rev=241330&r1=241329&r2=241330&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-rename/RenamingAction.cpp (original) +++ clang-tools-extra/trunk/clang-rename/RenamingAction.cpp Fri Jul 3 04:16:20 2015 @@ -37,14 +37,11 @@ namespace rename { class RenamingASTConsumer : public ASTConsumer { public: - RenamingASTConsumer(const std::string &NewName, - const std::string &PrevName, + RenamingASTConsumer(StringRef NewName, StringRef PrevName, const std::vector<std::string> &USRs, - tooling::Replacements &Replaces, - bool PrintLocations) + tooling::Replacements &Replaces, bool PrintLocations) : NewName(NewName), PrevName(PrevName), USRs(USRs), Replaces(Replaces), - PrintLocations(PrintLocations) { - } + PrintLocations(PrintLocations) {} void HandleTranslationUnit(ASTContext &Context) override { const auto &SourceMgr = Context.getSourceManager(); @@ -58,7 +55,7 @@ public: NewCandidates.clear(); } - auto PrevNameLen = PrevName.length(); + auto PrevNameLen = PrevName.size(); if (PrintLocations) for (const auto &Loc : RenamingCandidates) { FullSourceLoc FullLoc(Loc, SourceMgr); @@ -75,7 +72,7 @@ public: } private: - const std::string &NewName, &PrevName; + StringRef NewName, PrevName; const std::vector<std::string> &USRs; tooling::Replacements &Replaces; bool PrintLocations; Modified: clang-tools-extra/trunk/clang-rename/RenamingAction.h URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-rename/RenamingAction.h?rev=241330&r1=241329&r2=241330&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-rename/RenamingAction.h (original) +++ clang-tools-extra/trunk/clang-rename/RenamingAction.h Fri Jul 3 04:16:20 2015 @@ -25,7 +25,7 @@ namespace rename { class RenamingAction { public: - RenamingAction(const std::string &NewName, const std::string &PrevName, + RenamingAction(llvm::StringRef NewName, llvm::StringRef PrevName, const std::vector<std::string> &USRs, tooling::Replacements &Replaces, bool PrintLocations = false) : NewName(NewName), PrevName(PrevName), USRs(USRs), Replaces(Replaces), @@ -35,7 +35,7 @@ public: std::unique_ptr<ASTConsumer> newASTConsumer(); private: - const std::string &NewName, &PrevName; + llvm::StringRef NewName, PrevName; const std::vector<std::string> &USRs; tooling::Replacements &Replaces; bool PrintLocations; Modified: clang-tools-extra/trunk/modularize/Modularize.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/modularize/Modularize.cpp?rev=241330&r1=241329&r2=241330&view=diff ============================================================================== --- clang-tools-extra/trunk/modularize/Modularize.cpp (original) +++ clang-tools-extra/trunk/modularize/Modularize.cpp Fri Jul 3 04:16:20 2015 @@ -466,9 +466,9 @@ class EntityMap : public StringMap<Small public: DenseMap<const FileEntry *, HeaderContents> HeaderContentMismatches; - void add(const std::string &Name, enum Entry::EntryKind Kind, Location Loc) { + void add(StringRef Name, enum Entry::EntryKind Kind, Location Loc) { // Record this entity in its header. - HeaderEntry HE = { Name, Loc }; + HeaderEntry HE = {Name.str(), Loc}; CurHeaderContents[Loc.File].push_back(HE); // Check whether we've seen this entry before. Modified: clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp?rev=241330&r1=241329&r2=241330&view=diff ============================================================================== --- clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp (original) +++ clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp Fri Jul 3 04:16:20 2015 @@ -627,7 +627,7 @@ void PPCallbacksTracker::appendArgument( // Append a double-quoted argument to the top trace item. void PPCallbacksTracker::appendQuotedArgument(const char *Name, - const std::string &Value) { + llvm::StringRef Value) { std::string Str; llvm::raw_string_ostream SS(Str); SS << "\"" << Value << "\""; Modified: clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h?rev=241330&r1=241329&r2=241330&view=diff ============================================================================== --- clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h (original) +++ clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.h Fri Jul 3 04:16:20 2015 @@ -215,7 +215,7 @@ public: void appendArgument(const char *Name, const clang::Module *Value); /// \brief Append a double-quoted argument to the top trace item. - void appendQuotedArgument(const char *Name, const std::string &Value); + void appendQuotedArgument(const char *Name, llvm::StringRef Value); /// \brief Append a double-quoted file path argument to the top trace item. void appendFilePathArgument(const char *Name, llvm::StringRef Value); _______________________________________________ cfe-commits mailing list cfe-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits