@@ -399,7 +399,7 @@ G4_Operand* HWConformity::insertMovBefore(
399
399
// due to old BDW regioning rule we need NoMask inst here so they can be split
400
400
if (builder.getOptions ()->isTargetCM () && builder.getPlatform () == GENX_BDW)
401
401
{
402
- if (! bb->isAllLaneActive ())
402
+ if (bb->isInSimdFlow ())
403
403
{
404
404
newInstEMask = InstOpt_WriteEnable;
405
405
}
@@ -1530,7 +1530,7 @@ bool HWConformity::fixDstAlignment( INST_LIST_ITER i, G4_BB* bb, G4_Type extype,
1530
1530
1531
1531
// optimize initialization instructions
1532
1532
if ( inst->opcode () == G4_mov && src0->isImm () &&
1533
- ( bb->isAllLaneActive () || inst->isWriteEnableInst () ) &&
1533
+ ( ! bb->isInSimdFlow () || inst->isWriteEnableInst () ) &&
1534
1534
!inst->getPredicate () &&
1535
1535
dst->getRegAccess () == Direct &&
1536
1536
dst->getHorzStride () == 1 &&
@@ -2252,7 +2252,7 @@ bool HWConformity::fixMULInst( INST_LIST_ITER &i, G4_BB *bb )
2252
2252
if (next_dst != NULL &&
2253
2253
(next_inst->getSaturate () ||
2254
2254
next_dst->getByteOffset () % GENX_GRF_REG_SIZ != 0 ||
2255
- (! bb->isAllLaneActive () && next_inst->isWriteEnableInst () == false ) ||
2255
+ (bb->isInSimdFlow () && next_inst->isWriteEnableInst () == false ) ||
2256
2256
(next_dst &&
2257
2257
((next_dst->getExecTypeSize () > G4_Type_Table[Type_D].byteSize ) ||
2258
2258
isPreAssignedRegOffsetNonZero<G4_DstRegRegion>(next_dst)))))
@@ -5462,7 +5462,7 @@ void HWConformity::fixSADA2Inst(G4_BB* bb)
5462
5462
G4_INST* src2Dst = NULL ;
5463
5463
5464
5464
int emask = inst->getMaskOption ();
5465
- if (! bb->isAllLaneActive () &&
5465
+ if (bb->isInSimdFlow () &&
5466
5466
emask != InstOpt_WriteEnable &&
5467
5467
inst->getMaskOffset () != 0 )
5468
5468
{
@@ -6442,7 +6442,7 @@ bool HWConformity::splitInstListForByteDst( INST_LIST_ITER it, G4_BB *bb, uint16
6442
6442
// check if we can split the inst
6443
6443
if ( !canSplitByteDst ( inst_op ) ||
6444
6444
inst->getExecSize () == 1 ||
6445
- ( ! bb->isAllLaneActive () && !inst->isWriteEnableInst () ) ||
6445
+ ( bb->isInSimdFlow () && !inst->isWriteEnableInst () ) ||
6446
6446
dst->getByteOffset () % extypesize != 0 ||
6447
6447
dst->getHorzStride () != 1 ||
6448
6448
extypesize != G4_Type_Table[Type_W].byteSize )
@@ -6486,7 +6486,7 @@ bool HWConformity::splitInstListForByteDst( INST_LIST_ITER it, G4_BB *bb, uint16
6486
6486
}
6487
6487
if ( canSplit )
6488
6488
{
6489
- if ( ! bb->isAllLaneActive () && !defInst->isWriteEnableInst () )
6489
+ if ( bb->isInSimdFlow () && !defInst->isWriteEnableInst () )
6490
6490
{
6491
6491
canSplit = false ;
6492
6492
}
@@ -7806,7 +7806,7 @@ void HWConformity::fixPredCtrl(INST_LIST_ITER it, G4_BB* bb)
7806
7806
//
7807
7807
// if f0 happens to be < 16 elements we have to clear upper bits as well in case it has garbage values
7808
7808
assert (!inst->getCondMod () && " currently don't handle an instruction with conditional modifier" );
7809
- assert ((inst->isWriteEnableInst () || bb->isAllLaneActive ()) && " don't handle instruction in SIMD CF for now" );
7809
+ assert ((inst->isWriteEnableInst () || ! bb->isInSimdFlow ()) && " don't handle instruction in SIMD CF for now" );
7810
7810
G4_Declare* tmpFlag = builder.createTempFlag (1 );
7811
7811
G4_Type flagType = flagDcl->getNumberFlagElements () == 32 ? Type_UD : Type_UW;
7812
7812
uint32_t allOneMask = (uint32_t ) ((1ULL << flagDcl->getNumberFlagElements ()) - 1 );
0 commit comments