diff options
Diffstat (limited to 'contrib/llvm/lib/LTO/LTOCodeGenerator.cpp')
| -rw-r--r-- | contrib/llvm/lib/LTO/LTOCodeGenerator.cpp | 21 | 
1 files changed, 7 insertions, 14 deletions
diff --git a/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp b/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp index 3cf13a0ef2cd..716d66abf1c2 100644 --- a/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp +++ b/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp @@ -250,8 +250,8 @@ bool LTOCodeGenerator::compileOptimizedToFile(const char **name,    return true;  } -const void *LTOCodeGenerator::compileOptimized(size_t *length, -                                               std::string &errMsg) { +std::unique_ptr<MemoryBuffer> +LTOCodeGenerator::compileOptimized(std::string &errMsg) {    const char *name;    if (!compileOptimizedToFile(&name, errMsg))      return nullptr; @@ -264,16 +264,11 @@ const void *LTOCodeGenerator::compileOptimized(size_t *length,      sys::fs::remove(NativeObjectPath);      return nullptr;    } -  NativeObjectFile = std::move(*BufferOrErr);    // remove temp files    sys::fs::remove(NativeObjectPath); -  // return buffer, unless error -  if (!NativeObjectFile) -    return nullptr; -  *length = NativeObjectFile->getBufferSize(); -  return NativeObjectFile->getBufferStart(); +  return std::move(*BufferOrErr);  } @@ -289,16 +284,14 @@ bool LTOCodeGenerator::compile_to_file(const char **name,    return compileOptimizedToFile(name, errMsg);  } -const void* LTOCodeGenerator::compile(size_t *length, -                                      bool disableInline, -                                      bool disableGVNLoadPRE, -                                      bool disableVectorization, -                                      std::string &errMsg) { +std::unique_ptr<MemoryBuffer> +LTOCodeGenerator::compile(bool disableInline, bool disableGVNLoadPRE, +                          bool disableVectorization, std::string &errMsg) {    if (!optimize(disableInline, disableGVNLoadPRE,                  disableVectorization, errMsg))      return nullptr; -  return compileOptimized(length, errMsg); +  return compileOptimized(errMsg);  }  bool LTOCodeGenerator::determineTarget(std::string &errMsg) {  | 
