[llvm] [clang] [LinkerWrapper] Handle AMDGPU Target-IDs correctly when linking (PR #78359)
Matt Arsenault via cfe-commits
cfe-commits at lists.llvm.org
Tue Jan 16 21:07:56 PST 2024
================
@@ -162,6 +162,19 @@ class OffloadFile : public OwningBinary<OffloadBinary> {
std::unique_ptr<MemoryBuffer> Buffer)
: OwningBinary<OffloadBinary>(std::move(Binary), std::move(Buffer)) {}
+ /// Make a deep copy of this offloading file.
+ OffloadFile copy() const {
+ std::unique_ptr<MemoryBuffer> Buffer = MemoryBuffer::getMemBufferCopy(
+ getBinary()->getMemoryBufferRef().getBuffer());
+
+ // This parsing should never fail because it has already been parsed.
+ auto NewBinaryOrErr = OffloadBinary::create(*Buffer);
+ assert(NewBinaryOrErr && "Failed to parse a copy of the binary?");
+ if (!NewBinaryOrErr)
----------------
arsenm wrote:
Assert + error handling = ???
https://github.com/llvm/llvm-project/pull/78359
More information about the cfe-commits
mailing list