Skip to content

Commit 115daaf

Browse files
petechouigcbot
authored andcommitted
ZEBIN printf fix.
Fix the pointer type of the store instruction.
1 parent 320a50a commit 115daaf

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

IGC/Compiler/Optimizer/OpenCLPasses/OpenCLPrintf/OpenCLPrintfResolution.cpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -937,10 +937,14 @@ Instruction* OpenCLPrintfResolution::generateCastToPtr(SPrintfArgDescriptor* arg
937937
break;
938938
}
939939

940-
case IGC::SHADER_PRINTF_STRING_LITERAL:
941-
castedType = Type::getInt32PtrTy(*m_context, ADDRESS_SPACE_GLOBAL);
940+
case IGC::SHADER_PRINTF_STRING_LITERAL: {
941+
ModuleMetaData* modMd = getAnalysis<MetaDataUtilsWrapper>().getModuleMetaData();
942+
if (IGC_IS_FLAG_ENABLED(EnableZEBinary) || modMd->compOpt.EnableZEBinary)
943+
castedType = m_ptrSizeIntType->getPointerTo(ADDRESS_SPACE_GLOBAL);
944+
else
945+
castedType = Type::getInt32PtrTy(*m_context, ADDRESS_SPACE_GLOBAL);
942946
break;
943-
947+
}
944948
case IGC::SHADER_PRINTF_POINTER:
945949
castedType = m_ptrSizeIntType->getPointerTo(ADDRESS_SPACE_GLOBAL);
946950
break;

0 commit comments

Comments
 (0)