[OFFLOAD][L0] Restore function pointer lookup. (#211520)

PR #201352 incorrectly removed the calls to zeModuleGetGlobalPointer
when looking up a symbol.
This commit is contained in:
Alex Duran 2026-07-23 13:42:39 +02:00 committed by GitHub
parent fd67f99275
commit 7d566aa440
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -549,7 +549,7 @@ Expected<std::unique_ptr<MemoryBuffer>> L0ProgramBuilderTy::getELF() {
Error L0ProgramTy::getSymbolMetadata(const char *Name, void **AddrPtr,
size_t *SizePtr) const {
if (!Name)
if (!Name || !AddrPtr || !SizePtr)
return Plugin::error(ErrorCode::INVALID_ARGUMENT,
"Invalid arguments to getSymbolDeviceAddr");
@ -560,10 +560,14 @@ Error L0ProgramTy::getSymbolMetadata(const char *Name, void **AddrPtr,
CALL_ZE(RC, zeModuleGetGlobalPointer, Module, Name, &SymbolSize,
&SymbolAddr);
if (RC == ZE_RESULT_SUCCESS && SymbolAddr) {
if (AddrPtr)
*AddrPtr = SymbolAddr;
if (SizePtr)
*SizePtr = SymbolSize;
*AddrPtr = SymbolAddr;
*SizePtr = SymbolSize;
return Plugin::success();
}
CALL_ZE(RC, zeModuleGetFunctionPointer, Module, Name, &SymbolAddr);
if (RC == ZE_RESULT_SUCCESS && SymbolAddr) {
*AddrPtr = SymbolAddr;
*SizePtr = 0;
return Plugin::success();
}
}