[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 10:03:49 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:

Nope, it's there because I was trying to think ahead. I will likely use it for handling compression in the future as well

https://github.com/llvm/llvm-project/pull/169425


More information about the llvm-commits mailing list