P4 to Git Change 1613522 by gandryey@gera-ocl-lc on 2018/10/02 11:44:38
SWDEV-79445 - OCL generic changes and code clean-up Program compilation clean-up. Step#7: - Introduce a new key to control the compilation path dynamically - InitBuild/finiBuild clean-up Affected files ... ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_device.cpp#73 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#231 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#321 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.cpp#9 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/devprogram.hpp#7 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#245 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.hpp#78 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#111 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palkernel.cpp#67 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palkernel.hpp#25 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#80 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.hpp#36 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#58 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.cpp#43 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#93 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.hpp#41 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocsettings.cpp#37 edit ... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#96 edit ... //depot/stg/opencl/drivers/opencl/runtime/utils/flags.hpp#299 edit
This commit is contained in:
@@ -23,48 +23,6 @@
|
||||
|
||||
namespace gpu {
|
||||
|
||||
bool NullProgram::initBuild(amd::option::Options* options) {
|
||||
if (!device::Program::initBuild(options)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const char* devname = dev().hwInfo()->machineTarget_;
|
||||
options->setPerBuildInfo((devname && (devname[0] != '\0')) ? devname : "gpu",
|
||||
clBinary()->getEncryptCode(),
|
||||
true // FIXME: the dev ptr is used to query the wavefront size.
|
||||
);
|
||||
|
||||
// Elf Binary setup
|
||||
std::string outFileName;
|
||||
|
||||
// Recompile from IL may happen (invoking Kernel::recompil()) to generate correct
|
||||
// isa code for 7xx. Because of this, force saving AMDIL into the binary.
|
||||
clBinary()->init(options, (dev().calTarget() <= CAL_TARGET_730));
|
||||
if (options->isDumpFlagSet(amd::option::DUMP_BIF)) {
|
||||
outFileName = options->getDumpFileName(".bin");
|
||||
}
|
||||
|
||||
bool useELF64 = dev().settings().use64BitPtr_;
|
||||
if (!clBinary()->setElfOut(useELF64 ? ELFCLASS64 : ELFCLASS32,
|
||||
(outFileName.size() > 0) ? outFileName.c_str() : NULL)) {
|
||||
LogError("Setup elf out for gpu failed");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool NullProgram::finiBuild(bool isBuildGood) {
|
||||
clBinary()->resetElfOut();
|
||||
clBinary()->resetElfIn();
|
||||
|
||||
if (!isBuildGood) {
|
||||
// Prevent the encrypted binary form leaking out
|
||||
clBinary()->setBinary(NULL, 0);
|
||||
}
|
||||
|
||||
return device::Program::finiBuild(isBuildGood);
|
||||
}
|
||||
|
||||
const aclTargetInfo& NullProgram::info(const char* str) {
|
||||
acl_error err;
|
||||
std::string arch = GPU_TARGET_INFO_ARCH;
|
||||
@@ -1572,44 +1530,6 @@ HSAILProgram::~HSAILProgram() {
|
||||
amd::hsa::loader::Loader::Destroy(loader_);
|
||||
}
|
||||
|
||||
bool HSAILProgram::initBuild(amd::option::Options* options) {
|
||||
if (!device::Program::initBuild(options)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const char* devName = dev().hwInfo()->machineTarget_;
|
||||
options->setPerBuildInfo((devName && (devName[0] != '\0')) ? devName : "gpu",
|
||||
clBinary()->getEncryptCode(), true);
|
||||
|
||||
// Elf Binary setup
|
||||
std::string outFileName;
|
||||
|
||||
// true means fsail required
|
||||
clBinary()->init(options, true);
|
||||
if (options->isDumpFlagSet(amd::option::DUMP_BIF)) {
|
||||
outFileName = options->getDumpFileName(".bin");
|
||||
}
|
||||
|
||||
if (!clBinary()->setElfOut(LP64_SWITCH(ELFCLASS32, ELFCLASS64),
|
||||
(outFileName.size() > 0) ? outFileName.c_str() : NULL)) {
|
||||
LogError("Setup elf out for gpu failed");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool HSAILProgram::finiBuild(bool isBuildGood) {
|
||||
clBinary()->resetElfOut();
|
||||
clBinary()->resetElfIn();
|
||||
|
||||
if (!isBuildGood) {
|
||||
// Prevent the encrypted binary form leaking out
|
||||
clBinary()->setBinary(NULL, 0);
|
||||
}
|
||||
|
||||
return device::Program::finiBuild(isBuildGood);
|
||||
}
|
||||
|
||||
inline static std::vector<std::string> splitSpaceSeparatedString(char* str) {
|
||||
std::string s(str);
|
||||
std::stringstream ss(s);
|
||||
|
||||
Reference in New Issue
Block a user