From 0914a414db522cace0add8ea205c4ec9ec000696 Mon Sep 17 00:00:00 2001 From: agodavar Date: Tue, 13 Oct 2020 01:16:59 -0400 Subject: [PATCH] SWDEV-254185 : hiprtc headers - handle empty headerIncludeNames Change-Id: Ie06278c18b62cef1bdfbb8ac82728ed5667b2047 [ROCm/clr commit: 92f1ce41dce00f6d531c5248fa2368e108cf7391] --- projects/clr/rocclr/device/devprogram.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/projects/clr/rocclr/device/devprogram.cpp b/projects/clr/rocclr/device/devprogram.cpp index bbc6fc279a..bcc5e61db6 100755 --- a/projects/clr/rocclr/device/devprogram.cpp +++ b/projects/clr/rocclr/device/devprogram.cpp @@ -1617,14 +1617,20 @@ int32_t Program::build(const std::string& sourceCode, const char* origOptions, headerIncludeNames.push_back(tmpHeaderNames[i].c_str()); } // Compile the source code if any - if ((buildStatus_ == CL_BUILD_IN_PROGRESS) && !sourceCode.empty() && - !compileImpl(sourceCode, headers, &headerIncludeNames[0], options)) { + bool compileStatus = true; + if ((buildStatus_ == CL_BUILD_IN_PROGRESS) && !sourceCode.empty()) { + if (!headerIncludeNames.empty()) { + compileStatus = compileImpl(sourceCode, headers, &headerIncludeNames[0], options); + } else { + compileStatus = compileImpl(sourceCode, headers, nullptr, options); + } + } + if (!compileStatus) { buildStatus_ = CL_BUILD_ERROR; if (buildLog_.empty()) { buildLog_ = "Internal error: Compilation failed."; } } - if ((buildStatus_ == CL_BUILD_IN_PROGRESS) && !linkImpl(options)) { buildStatus_ = CL_BUILD_ERROR; if (buildLog_.empty()) {