Revert "Remove redundant "std::move"s in return statements"

The build failed with

  error: call to deleted constructor of 'llvm::Error'

errors.

This reverts commit 1c2241a7936bf85aa68aef94bd40c3ba77d8ddf2.
diff --git a/llvm/lib/Remarks/YAMLRemarkParser.cpp b/llvm/lib/Remarks/YAMLRemarkParser.cpp
index a48b2b8..dd834d8 100644
--- a/llvm/lib/Remarks/YAMLRemarkParser.cpp
+++ b/llvm/lib/Remarks/YAMLRemarkParser.cpp
@@ -164,7 +164,7 @@
           : std::make_unique<YAMLRemarkParser>(Buf);
   if (SeparateBuf)
     Result->SeparateBuf = std::move(SeparateBuf);
-  return Result;
+  return std::move(Result);
 }
 
 YAMLRemarkParser::YAMLRemarkParser(StringRef Buf)
@@ -190,7 +190,7 @@
 Expected<std::unique_ptr<Remark>>
 YAMLRemarkParser::parseRemark(yaml::Document &RemarkEntry) {
   if (Error E = error())
-    return E;
+    return std::move(E);
 
   yaml::Node *YAMLRoot = RemarkEntry.getRoot();
   if (!YAMLRoot) {
@@ -267,7 +267,7 @@
     return error("Type, Pass, Name or Function missing.",
                  *RemarkEntry.getRoot());
 
-  return Result;
+  return std::move(Result);
 }
 
 Expected<Type> YAMLRemarkParser::parseType(yaml::MappingNode &Node) {