SWDEV-258808 - OCLSeparateCompile subtest of oclcompiler error
[PAL to KFD/ROCr][ROCr_Runtime][Vega10] OCLSeparateCompile subtest of oclcompiler from ocltst test package is encountering clLinkProgram() failed (chksum 0x00000001) error If runtime does not provide a file name as dump file to ELF library, ELF library use a temp file in current folder. The current folder can be not writable for several reasons: 1. The application current folder might be system folder, the user does not have write permission. 2. The current folder is under a readonly file system. This happens for embedded customers. Tested in VEGA10. Issue was fixed. Change-Id: Ic0e9f040b7c7583914301673cce237ab28b0c0cb
Этот коммит содержится в:
коммит произвёл
AlexBin Xie
родитель
7c7e36dd44
Коммит
6327dbc4cc
@@ -1371,15 +1371,20 @@ bool Program::initBuild(amd::option::Options* options) {
|
||||
|
||||
// Elf Binary setup
|
||||
std::string outFileName;
|
||||
bool tempFile = false;
|
||||
|
||||
// true means hsail required
|
||||
clBinary()->init(options, true);
|
||||
if (options->isDumpFlagSet(amd::option::DUMP_BIF)) {
|
||||
outFileName = options->getDumpFileName(".bin");
|
||||
} else {
|
||||
// elf lib needs a writable temp file
|
||||
outFileName = amd::Os::getTempFileName();
|
||||
tempFile = true;
|
||||
}
|
||||
|
||||
if (!clBinary()->setElfOut(LP64_SWITCH(ELFCLASS32, ELFCLASS64),
|
||||
(outFileName.size() > 0) ? outFileName.c_str() : nullptr)) {
|
||||
(outFileName.size() > 0) ? outFileName.c_str() : nullptr, tempFile)) {
|
||||
LogError("Setup elf out for gpu failed");
|
||||
return false;
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user