[llvm] [Offloading] Extend OffloadBinary format to support multiple metadata entries (PR #169425)
Joseph Huber via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 25 08:01:41 PST 2025
================
@@ -109,9 +109,12 @@ class OffloadBinary : public Binary {
struct Header {
uint8_t Magic[4] = {0x10, 0xFF, 0x10, 0xAD}; // 0x10FF10AD magic bytes.
uint32_t Version = OffloadBinary::Version; // Version identifier.
- uint64_t Size; // Size in bytes of this entire binary.
- uint64_t EntryOffset; // Offset of the metadata entry in bytes.
- uint64_t EntrySize; // Size of the metadata entry in bytes.
+ uint64_t Size; // Size in bytes of this entire binary.
+ uint64_t EntriesCount; // Number of metadata entries in the binary.
+ uint64_t EntriesOffset; // Offset in bytes to the start of entries block.
+ uint64_t EntriesSize; // Size of the entries block in bytes.
+ uint64_t StringOffset; // Offset in bytes to the global string map
+ uint64_t NumStrings; // Number of entries in the global string map.
----------------
jhuber6 wrote:
I do not think this needs to be in the header, we could just make an entry that has an empty image and only contains string data. You can indicate this with the `flags` field.
https://github.com/llvm/llvm-project/pull/169425
More information about the llvm-commits
mailing list