File tree Expand file tree Collapse file tree 1 file changed +14
-3
lines changed Expand file tree Collapse file tree 1 file changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -4704,11 +4704,17 @@ void EmitPass::emitOutput(llvm::GenIntrinsicInst* inst)
4704
4704
4705
4705
void EmitPass::createVMaskPred(CVariable*& predicate)
4706
4706
{
4707
+ if (!m_currShader->IsPatchablePS())
4708
+ return;
4709
+
4710
+ if (predicate != nullptr)
4711
+ return;
4712
+
4707
4713
uint32_t debug = IGC_GET_FLAG_VALUE(VMaskPredDebug);
4708
4714
if (debug < 1)
4709
4715
return;
4710
4716
4711
- if (IGC_IS_FLAG_ENABLED(UseVMaskPredicate) && (predicate == nullptr) )
4717
+ if (IGC_IS_FLAG_ENABLED(UseVMaskPredicate))
4712
4718
{
4713
4719
// Copy VMASK to a predicate
4714
4720
// (W) mov (1|M0) f0.0<1>:ud sr0.3<0;1,0>:ud
@@ -4727,13 +4733,18 @@ void EmitPass::createVMaskPred(CVariable*& predicate)
4727
4733
4728
4734
void EmitPass::UseVMaskPred()
4729
4735
{
4736
+ if (!m_currShader->IsPatchablePS())
4737
+ return;
4738
+
4739
+ if (!m_vMaskPredForSubplane)
4740
+ return;
4741
+
4730
4742
uint32_t debug = IGC_GET_FLAG_VALUE(VMaskPredDebug);
4731
4743
if (debug < 2)
4732
4744
return;
4733
4745
4734
4746
bool subspan = m_encoder->IsSubSpanDestination();
4735
- if (IGC_IS_FLAG_ENABLED(UseVMaskPredicate) && m_vMaskPredForSubplane &&
4736
- subspan && !m_destination->IsUniform())
4747
+ if (IGC_IS_FLAG_ENABLED(UseVMaskPredicate) && subspan && !m_destination->IsUniform())
4737
4748
{
4738
4749
m_encoder->SetPredicate(m_vMaskPredForSubplane);
4739
4750
}
You can’t perform that action at this time.
0 commit comments