Skip to content

Commit 87325cd

Browse files
fftzengigcbot
authored andcommitted
Skip higher SIMD for high pressure dx9 shaders
Skip higher SIMD for high pressure dx9 shaders
1 parent 8224b22 commit 87325cd

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

IGC/Compiler/CISACodeGen/ShaderCodeGen.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1239,6 +1239,12 @@ void CodeGen(DomainShaderContext* ctx, CShaderProgram::KernelShaderMap& shaders)
12391239
// check based on performance measures.
12401240
static bool SimdEarlyCheck(CodeGenContext* ctx)
12411241
{
1242+
if (IGC_IS_FLAG_ENABLED(SimdEarlyOut_9) &&
1243+
ctx->m_instrTypes.numPsInputs > 22 && ctx->m_instrTypes.numInsts > 1000)
1244+
{
1245+
return false;
1246+
}
1247+
12421248
if (ctx->m_sampler < 11 || ctx->m_inputCount < 16 || ctx->m_tempCount < 40 || ctx->m_dxbcCount < 280 || ctx->m_ConstantBufferCount < 500)
12431249
{
12441250
if (ctx->m_tempCount < 90 && ctx->m_ConstantBufferCount < 210)

IGC/common/igc_flags.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -350,6 +350,7 @@ DECLARE_IGC_REGKEY(bool, DumpTimeStatsPerPass, false, "Collect Timing o
350350
DECLARE_IGC_REGKEY(bool, DumpHasNonKernelArgLdSt, false, "Print if hasNonKernelArg load/store to stderr", true)
351351
DECLARE_IGC_REGKEY(bool, PrintPsoDdiHash, true, "Print psoDDIHash in TimeStats_Shaders.csv file", true)
352352
DECLARE_IGC_REGKEY(bool, AddExtraIntfInfo, false, "Will add extra inteference info from .extraintf files from c:\\Intel\\IGC\\ShaderOverride", false)
353+
DECLARE_IGC_REGKEY(bool, SimdEarlyOut_9, false, "Force compiler simd early out for dx9", true)
353354

354355
DECLARE_IGC_GROUP("Debugging features")
355356
DECLARE_IGC_REGKEY(bool, InitializeUndefValueEnable, false, "Setting this to 1/true initializes all undefs in URB payload to 0", false)

0 commit comments

Comments
 (0)