@@ -3969,13 +3969,14 @@ namespace IGC
3969
3969
}
3970
3970
}
3971
3971
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)
3973
3973
{
3974
3974
CodeGenContext* context = m_program->GetContext ();
3975
3975
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
+
3979
3980
// create vbuilder->Compile() params
3980
3981
if (IGC_IS_FLAG_ENABLED (EnableVISADotAll))
3981
3982
{
@@ -4047,7 +4048,7 @@ namespace IGC
4047
4048
(context->m_DriverInfo .EnableShaderDebugHashCodeInKernel () ||
4048
4049
IGC_IS_FLAG_ENABLED (ShaderDebugHashCodeInKernel)))
4049
4050
{
4050
- auto addHash = [&](char * OptName, QWORD Hash)
4051
+ auto addHash = [&](const char * OptName, QWORD Hash)
4051
4052
{
4052
4053
params.push_back (param_uptr (OptName, literal_deleter));
4053
4054
std::string Low = std::to_string ((DWORD)Hash);
@@ -5589,7 +5590,7 @@ namespace IGC
5589
5590
SetVISAWaTable (m_program->m_Platform ->getWATable ());
5590
5591
5591
5592
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;
5593
5594
if (!m_hasInlineAsm)
5594
5595
{
5595
5596
// Asm text writer mode doesnt need dump params
@@ -6423,7 +6424,7 @@ namespace IGC
6423
6424
const std::string kernelName)
6424
6425
{
6425
6426
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 >
6427
6428
params2;
6428
6429
InitBuildParams (params2);
6429
6430
for (const auto &ptr : params2) {
0 commit comments