SWDEV-241896 - Remove extern support in ROCclr/HIP since compiler added Texture Reference support.

Change-Id: I2cf27e13a53860fe11e9245c9cbdcb8bd88a7872
This commit is contained in:
kjayapra-amd
2020-09-21 09:30:06 -04:00
committad av Karthik Jayaprakash
förälder 40b432f992
incheckning 4071cf1a16
3 ändrade filer med 0 tillägg och 90 borttagningar
-78
Visa fil
@@ -98,11 +98,6 @@ Program::Program(amd::Device& device, amd::Program& owner)
Program::~Program() {
clear();
/* Delete the undefined memory object */
for (auto it = undef_mem_obj_.begin(); it != undef_mem_obj_.end(); ++it) {
(*it)->release();
}
if (isLC()) {
#if defined(USE_COMGR_LIBRARY)
for (auto const& kernelMeta : kernelMetadataMap_) {
@@ -2606,77 +2601,4 @@ bool Program::getGlobalVarFromCodeObj(std::vector<std::string>* var_names) const
return true;
#endif
}
bool Program::getUndefinedVarFromCodeObj(std::vector<std::string>* var_names) const {
#if defined(USE_COMGR_LIBRARY)
return getSymbolsFromCodeObj(var_names, AMD_COMGR_SYMBOL_TYPE_NOTYPE);
#else
return true;
#endif
}
bool Program::getUndefinedVarInfo(std::string var_name, void** var_addr, size_t* var_size) {
if (owner()->varcallback != nullptr) {
return owner()->varcallback(as_cl(owner()), var_name.c_str(), var_addr, var_size);
} else {
buildLog_ += "SVAR HIP Call back is not set \n";
return false;
}
}
bool Program::defineUndefinedVars() {
size_t address = 0;
size_t hsize = 0;
void* dptr = nullptr;
void* hptr = nullptr;
device::Memory* dev_mem = nullptr;
amd::Memory* amd_mem_obj = nullptr;
std::vector<std::string> var_names;
if (!getUndefinedVarFromCodeObj(&var_names)) {
DevLogError("Cannot get Undefined Var from Code Object \n");
return false;
}
for (auto it = var_names.begin(); it != var_names.end(); ++it) {
if (!getUndefinedVarInfo(*it, &hptr, &hsize)) {
continue;
}
amd_mem_obj = new (owner()->context()) amd::Buffer(const_cast<amd::Context&>(owner()->context()),
CL_MEM_USE_HOST_PTR, hsize);
if (amd_mem_obj == nullptr) {
LogError("[OCL] failed to create a mem object!");
return false;
}
if (!amd_mem_obj->create(hptr)) {
LogError("[OCL] failed to create a svm hidden buffer!");
amd_mem_obj->release();
return false;
}
undef_mem_obj_.push_back(amd_mem_obj);
dev_mem = amd_mem_obj->getDeviceMemory(device());
if (dev_mem == nullptr) {
LogError("[OCL] failed to create a mem object!");
return false;
}
dptr = reinterpret_cast<void*>(dev_mem->virtualAddress());
if (dev_mem == nullptr) {
LogError("[OCL] failed to create a mem object!");
return false;
}
if(!defineGlobalVar(it->c_str(), dptr)) {
LogError("[OCL] failed to define global var");
return false;
}
}
return true;
}
} /* namespace device*/