diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2015-05-01 15:16:11 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2015-05-01 15:16:11 +0000 |
commit | 548e8a405cc56065b978a99c9192bf7efda99776 (patch) | |
tree | 2a974d9c9f9f42af8853f42b6022b4c77bb9beca | |
parent | 439ee9d7bc8e9eb6936dd6663706282127558805 (diff) | |
download | bcm5719-llvm-548e8a405cc56065b978a99c9192bf7efda99776.tar.gz bcm5719-llvm-548e8a405cc56065b978a99c9192bf7efda99776.zip |
Remove std::move on return when it could prevent copy elision.
Found by -Wpessimizing-move, no functional change. The APFloat and
PassManager change doesn't affect codegen as returning a by-value
argument will always result in a move.
llvm-svn: 236316
-rw-r--r-- | llvm/include/llvm/ADT/APFloat.h | 2 | ||||
-rw-r--r-- | llvm/include/llvm/IR/PassManager.h | 4 | ||||
-rw-r--r-- | llvm/utils/yaml-bench/YAMLBench.cpp | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/llvm/include/llvm/ADT/APFloat.h b/llvm/include/llvm/ADT/APFloat.h index 53b53c5dfa5..958e3fdaea1 100644 --- a/llvm/include/llvm/ADT/APFloat.h +++ b/llvm/include/llvm/ADT/APFloat.h @@ -343,7 +343,7 @@ public: /// copied from some other APFloat. static APFloat copySign(APFloat Value, const APFloat &Sign) { Value.copySign(Sign); - return std::move(Value); + return Value; } /// @} diff --git a/llvm/include/llvm/IR/PassManager.h b/llvm/include/llvm/IR/PassManager.h index 3c24e7231a1..b566f01ca8b 100644 --- a/llvm/include/llvm/IR/PassManager.h +++ b/llvm/include/llvm/IR/PassManager.h @@ -509,7 +509,7 @@ private: PreservedAnalyses invalidateImpl(IRUnitT &IR, PreservedAnalyses PA) { // Short circuit for a common case of all analyses being preserved. if (PA.areAllPreserved()) - return std::move(PA); + return PA; if (DebugLogging) dbgs() << "Invalidating all non-preserved analyses for: " @@ -549,7 +549,7 @@ private: if (ResultsList.empty()) AnalysisResultLists.erase(&IR); - return std::move(PA); + return PA; } /// \brief List of function analysis pass IDs and associated concept pointers. diff --git a/llvm/utils/yaml-bench/YAMLBench.cpp b/llvm/utils/yaml-bench/YAMLBench.cpp index 872f586ef7e..0fb31387fc2 100644 --- a/llvm/utils/yaml-bench/YAMLBench.cpp +++ b/llvm/utils/yaml-bench/YAMLBench.cpp @@ -69,7 +69,7 @@ static std::string prettyTag(yaml::Node *N) { if (StringRef(Tag).startswith("tag:yaml.org,2002:")) { std::string Ret = "!!"; Ret += StringRef(Tag).substr(18); - return std::move(Ret); + return Ret; } std::string Ret = "!<"; Ret += Tag; |