diff --git a/rocclr/runtime/device/pal/palprogram.cpp b/rocclr/runtime/device/pal/palprogram.cpp index 871d9cc149..5857a56435 100644 --- a/rocclr/runtime/device/pal/palprogram.cpp +++ b/rocclr/runtime/device/pal/palprogram.cpp @@ -1504,6 +1504,9 @@ LightningProgram::linkImpl(amd::option::Options *options) optLevel << "-O" << options->oVariables->OptLevel; codegenOptions.append(" ").append(optLevel.str()); + // Set whole program mode + codegenOptions.append(" -mllvm -amdgpu-internalize-symbols"); + // Tokenize the options string into a vector of strings std::istringstream strstr(codegenOptions); std::istream_iterator sit(strstr), end; diff --git a/rocclr/runtime/device/rocm/rocprogram.cpp b/rocclr/runtime/device/rocm/rocprogram.cpp index 9dcbba16c1..8e17aea1bc 100644 --- a/rocclr/runtime/device/rocm/rocprogram.cpp +++ b/rocclr/runtime/device/rocm/rocprogram.cpp @@ -813,6 +813,9 @@ HSAILProgram::linkImpl_LC(amd::option::Options *options) optLevel << "-O" << options->oVariables->OptLevel; codegenOptions.append(" ").append(optLevel.str()); + // Set whole program mode + codegenOptions.append(" -mllvm -amdgpu-internalize-symbols"); + // Tokenize the options string into a vector of strings std::istringstream strstr(codegenOptions); std::istream_iterator sit(strstr), end;