[llvm] [Offload] Allow querying the size of globals (PR #147698)
Joseph Huber via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 9 06:12:57 PDT 2025
================
@@ -37,20 +37,33 @@ using namespace llvm::object;
/// Common abstraction for globals that live on the host and device.
/// It simply encapsulates the symbol name, symbol size, and symbol address
/// (which might be host or device depending on the context).
+/// Both size and address may be absent, and can be populated with
+// getGlobalMetadataFromDevice/Image.
class GlobalTy {
// NOTE: Maybe we can have a pointer to the offload entry name instead of
// holding a private copy of the name as a std::string.
std::string Name;
- uint32_t Size;
- void *Ptr;
+ std::optional<uint32_t> Size;
+ std::optional<void *> Ptr;
----------------
jhuber6 wrote:
Do we need optional here? The pointer type is already nullable with `nullptr` and I would expect that the size type of be invalid, though I forget the exact logic here.
https://github.com/llvm/llvm-project/pull/147698
More information about the llvm-commits
mailing list