diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2023-12-09 13:28:42 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2023-12-09 13:28:42 +0000 |
| commit | b1c73532ee8997fe5dfbeb7d223027bdf99758a0 (patch) | |
| tree | 7d6e51c294ab6719475d660217aa0c0ad0526292 /llvm/lib/ObjectYAML/OffloadEmitter.cpp | |
| parent | 7fa27ce4a07f19b07799a767fc29416f3b625afb (diff) | |
Diffstat (limited to 'llvm/lib/ObjectYAML/OffloadEmitter.cpp')
| -rw-r--r-- | llvm/lib/ObjectYAML/OffloadEmitter.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/llvm/lib/ObjectYAML/OffloadEmitter.cpp b/llvm/lib/ObjectYAML/OffloadEmitter.cpp index dfb572531660..8692ad8a5865 100644 --- a/llvm/lib/ObjectYAML/OffloadEmitter.cpp +++ b/llvm/lib/ObjectYAML/OffloadEmitter.cpp @@ -38,14 +38,10 @@ bool yaml2offload(Binary &Doc, raw_ostream &Out, ErrorHandler EH) { Member.Content->writeAsBinary(OS); Image.Image = MemoryBuffer::getMemBufferCopy(OS.str()); - std::unique_ptr<MemoryBuffer> Binary = object::OffloadBinary::write(Image); - // Copy the data to a new buffer so we can modify the bytes directly. - SmallVector<char> NewBuffer; - std::copy(Binary->getBufferStart(), Binary->getBufferEnd(), - std::back_inserter(NewBuffer)); + auto Buffer = object::OffloadBinary::write(Image); auto *TheHeader = - reinterpret_cast<object::OffloadBinary::Header *>(&NewBuffer[0]); + reinterpret_cast<object::OffloadBinary::Header *>(&Buffer[0]); if (Doc.Version) TheHeader->Version = *Doc.Version; if (Doc.Size) @@ -55,7 +51,7 @@ bool yaml2offload(Binary &Doc, raw_ostream &Out, ErrorHandler EH) { if (Doc.EntrySize) TheHeader->EntrySize = *Doc.EntrySize; - Out.write(NewBuffer.begin(), NewBuffer.size()); + Out.write(Buffer.begin(), Buffer.size()); } return true; |
