diff --git a/hipamd/src/hip_rtc.cpp b/hipamd/src/hip_rtc.cpp index 3901925c98..f13a7c718c 100644 --- a/hipamd/src/hip_rtc.cpp +++ b/hipamd/src/hip_rtc.cpp @@ -244,7 +244,8 @@ hiprtcResult hiprtcCompileProgram(hiprtcProgram prog, int numOptions, const char amd::Program* program = as_amd(reinterpret_cast(prog)); std::ostringstream ostrstr; - std::vector oarr(&options[0], &options[numOptions]); + std::vector oarr; + oarr.reserve(numOptions + 12); const std::string hipVerOpt{"--hip-version=" + std::to_string(HIP_VERSION_MAJOR) + '.' + std::to_string(HIP_VERSION_MINOR) + '.' + @@ -269,6 +270,9 @@ hiprtcResult hiprtcCompileProgram(hiprtcProgram prog, int numOptions, const char #endif #endif + // Append the rest of options + oarr.insert(oarr.end(), &options[0], &options[numOptions]); + transformOptions(oarr, program); std::copy(oarr.begin(), oarr.end(), std::ostream_iterator(ostrstr, " "));