Skip to content

Commit 4042250

Browse files
jaladreipsigcbot
authored andcommitted
Prepare CISACodeGen for C++20
Prepare CISACodeGen for C++20
1 parent 74660f1 commit 4042250

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

IGC/Compiler/CISACodeGen/CISABuilder.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -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) {

IGC/Compiler/CISACodeGen/CISABuilder.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ namespace IGC
117117
public:
118118
void InitEncoder(bool canAbortOnSpill, bool hasStackCall, bool hasInlineAsmCall, bool hasAdditionalVisaAsmToLink, int numThreadsPerEU,
119119
uint lowerBoundGRF, uint upperBoundGRF, VISAKernel* prevKernel);
120-
void InitBuildParams(llvm::SmallVector<std::unique_ptr< char, std::function<void(char*)>>, 10> & params);
120+
void InitBuildParams(llvm::SmallVector<std::unique_ptr<const char, std::function<void(const char*)>>, 10> & params);
121121
void InitVISABuilderOptions(TARGET_PLATFORM VISAPlatform, bool canAbortOnSpill, bool hasStackCall, bool enableVISA_IR);
122122
SEncoderState CopyEncoderState();
123123
void SetEncoderState(SEncoderState& newState);

0 commit comments

Comments
 (0)