@@ -3969,13 +3969,14 @@ namespace IGC
39693969 }
39703970 }
39713971
3972- void CEncoder::InitBuildParams (llvm::SmallVector<std::unique_ptr< char , std::function<void (char *)>>, 10>& params)
3972+ void CEncoder::InitBuildParams (llvm::SmallVector<std::unique_ptr<const char , std::function<void (const char *)>>, 10>& params)
39733973 {
39743974 CodeGenContext* context = m_program->GetContext ();
39753975 bool isOptDisabled = context->getModuleMetaData ()->compOpt .OptDisable ;
3976- using param_uptr = std::unique_ptr<char , std::function<void (char *)>>;
3977- auto literal_deleter = [](char * val) {};
3978- auto dup_deleter = [](char * val) {free (val); };
3976+ using param_uptr = std::unique_ptr<const char , std::function<void (const char *)>>;
3977+ auto literal_deleter = [](const char * val) {};
3978+ auto dup_deleter = [](const char * val) { free (const_cast <char *>(val)); };
3979+
39793980 // create vbuilder->Compile() params
39803981 if (IGC_IS_FLAG_ENABLED (EnableVISADotAll))
39813982 {
@@ -4047,7 +4048,7 @@ namespace IGC
40474048 (context->m_DriverInfo .EnableShaderDebugHashCodeInKernel () ||
40484049 IGC_IS_FLAG_ENABLED (ShaderDebugHashCodeInKernel)))
40494050 {
4050- auto addHash = [&](char * OptName, QWORD Hash)
4051+ auto addHash = [&](const char * OptName, QWORD Hash)
40514052 {
40524053 params.push_back (param_uptr (OptName, literal_deleter));
40534054 std::string Low = std::to_string ((DWORD)Hash);
@@ -5589,7 +5590,7 @@ namespace IGC
55895590 SetVISAWaTable (m_program->m_Platform ->getWATable ());
55905591
55915592 llvm::SmallVector<const char *, 10 > params;
5592- llvm::SmallVector<std::unique_ptr< char , std::function<void (char *)>>, 10 > params2;
5593+ llvm::SmallVector<std::unique_ptr<const char , std::function<void (const char *)>>, 10 > params2;
55935594 if (!m_hasInlineAsm)
55945595 {
55955596 // Asm text writer mode doesnt need dump params
@@ -6423,7 +6424,7 @@ namespace IGC
64236424 const std::string kernelName)
64246425 {
64256426 llvm::SmallVector<const char *, 10 > params;
6426- llvm::SmallVector<std::unique_ptr<char , std::function<void (char *)>>, 10 >
6427+ llvm::SmallVector<std::unique_ptr<const char , std::function<void (const char *)>>, 10 >
64276428 params2;
64286429 InitBuildParams (params2);
64296430 for (const auto &ptr : params2) {
0 commit comments