Loader: update symbol processing for v2+

- Skip symbols that are STB_LOCAL and not STT_AMDGPU_HSA_KERNEL

Change-Id: I68567f58de9bf3f07dbd8020ef63f47667c86367
Bu işleme şunda yer alıyor:
Konstantin Zhuravlyov
2019-01-18 15:42:28 -05:00
ebeveyn c1ad82a6b7
işleme 8bee6e4976
+5
Dosyayı Görüntüle
@@ -1148,6 +1148,11 @@ hsa_status_t ExecutableImpl::LoadCodeObject(
if (status != HSA_STATUS_SUCCESS) return status;
for (size_t i = 0; i < code->SymbolCount(); ++i) {
if (majorVersion >= 2 &&
code->GetSymbol(i)->elfSym()->type() != STT_AMDGPU_HSA_KERNEL &&
code->GetSymbol(i)->elfSym()->binding() == STB_LOCAL)
continue;
status = LoadSymbol(agent, code->GetSymbol(i), majorVersion);
if (status != HSA_STATUS_SUCCESS) { return status; }
}