@@ -2586,10 +2586,8 @@ SpillManagerGRF::createSpillSendInstr (
25862586 messageDescImm =
25872587 createSpillSendMsgDesc (spillOff, height, execSize, rvar->getBaseRegVar ());
25882588#ifdef _DEBUG
2589- {
2590- int offset = (messageDescImm->getInt () & 0xFFF ) * numEltPerGRF (Type_UB);
2591- MUST_BE_TRUE (offset >= globalScratchOffset, " incorrect offset" );
2592- }
2589+ int offset = (messageDescImm->getInt () & 0xFFF ) * numEltPerGRF (Type_UB);
2590+ MUST_BE_TRUE (offset >= globalScratchOffset, " incorrect offset" );
25932591#endif
25942592 }
25952593 else
@@ -2608,8 +2606,7 @@ SpillManagerGRF::createSpillSendInstr (
26082606
26092607 auto off = G4_SpillIntrinsic::InvalidOffset;
26102608 G4_Declare* fp = nullptr ;
2611- if (useScratchMsg_
2612- )
2609+ if (useScratchMsg_)
26132610 off = (messageDescImm->getInt () & 0xfff );
26142611 else
26152612 {
@@ -2624,9 +2621,6 @@ SpillManagerGRF::createSpillSendInstr (
26242621 off = (offset + spillOff * getGRFSize ()) >> SCRATCH_SPACE_ADDRESS_UNIT;
26252622 if (builder_->kernel .fg .getIsStackCallFunc () || builder_->kernel .fg .getHasStackCalls ())
26262623 fp = builder_->kernel .fg .getFramePtrDcl ();
2627-
2628- if (!fp && offset < SCRATCH_MSG_LIMIT)
2629- headerOpnd = builder_->Create_Src_Opnd_From_Dcl (builder_->getBuiltinR0 (), builder_->getRegionStride1 ());
26302624 }
26312625 }
26322626 sendInst = builder_->createSpill (postDst, headerOpnd, srcOpnd, execSize, height, off, fp, InstOpt_WriteEnable);
@@ -2656,8 +2650,7 @@ SpillManagerGRF::createSpillSendInstr (
26562650)
26572651{
26582652#ifdef _DEBUG
2659- if (useScratchMsg_
2660- )
2653+ if (useScratchMsg_)
26612654 {
26622655 G4_Imm* messageDescImm =
26632656 createSpillSendMsgDesc (spilledRangeRegion, execSize);
@@ -2678,8 +2671,7 @@ SpillManagerGRF::createSpillSendInstr (
26782671
26792672 auto off = G4_SpillIntrinsic::InvalidOffset;
26802673 G4_Declare* fp = nullptr ;
2681- if (useScratchMsg_
2682- )
2674+ if (useScratchMsg_)
26832675 {
26842676 G4_Imm* messageDescImm =
26852677 createSpillSendMsgDesc (spilledRangeRegion, execSize);
@@ -2699,9 +2691,6 @@ SpillManagerGRF::createSpillSendInstr (
26992691 off = (offset + regOff * getGRFSize ()) >> SCRATCH_SPACE_ADDRESS_UNIT;
27002692 if (builder_->kernel .fg .getIsStackCallFunc () || builder_->kernel .fg .getHasStackCalls ())
27012693 fp = builder_->kernel .fg .getFramePtrDcl ();
2702-
2703- if (!fp && offset < SCRATCH_MSG_LIMIT)
2704- headerOpnd = builder_->Create_Src_Opnd_From_Dcl (builder_->getBuiltinR0 (), builder_->getRegionStride1 ());
27052694 }
27062695 }
27072696 sendInst = builder_->createSpill (postDst, headerOpnd, srcOpnd, execSize, (uint16_t )extMsgLength,
@@ -2915,10 +2904,8 @@ SpillManagerGRF::createFillSendInstr (
29152904 messageDescImm =
29162905 createFillSendMsgDesc (spillOff, height, execSize, rvar->getBaseRegVar ());
29172906#ifdef _DEBUG
2918- {
2919- int offset = (messageDescImm->getInt () & 0xFFF ) * numEltPerGRF (Type_UB);
2920- MUST_BE_TRUE (offset >= globalScratchOffset, " incorrect offset" );
2921- }
2907+ int offset = (messageDescImm->getInt () & 0xFFF ) * numEltPerGRF (Type_UB);
2908+ MUST_BE_TRUE (offset >= globalScratchOffset, " incorrect offset" );
29222909#endif
29232910 }
29242911 else
@@ -2935,8 +2922,7 @@ SpillManagerGRF::createFillSendInstr (
29352922
29362923 unsigned int off = G4_FillIntrinsic::InvalidOffset;
29372924 G4_Declare* fp = nullptr ;
2938- if (useScratchMsg_
2939- )
2925+ if (useScratchMsg_)
29402926 off = (messageDescImm->getInt () & 0xfff );
29412927 else
29422928 {
@@ -2952,9 +2938,6 @@ SpillManagerGRF::createFillSendInstr (
29522938 off = (offset + spillOff * getGRFSize ()) >> SCRATCH_SPACE_ADDRESS_UNIT;
29532939 if (builder_->kernel .fg .getIsStackCallFunc () || builder_->kernel .fg .getHasStackCalls ())
29542940 fp = builder_->kernel .fg .getFramePtrDcl ();
2955-
2956- if (!fp && offset < SCRATCH_MSG_LIMIT)
2957- payload = builder_->Create_Src_Opnd_From_Dcl (builder_->getBuiltinR0 (), builder_->getRegionStride1 ());
29582941 }
29592942 }
29602943 auto fillInst = builder_->createFill (payload, postDst, execSize, height, off, fp, InstOpt_WriteEnable);
@@ -2990,8 +2973,7 @@ SpillManagerGRF::createFillSendInstr(
29902973 unsigned int off = G4_FillIntrinsic::InvalidOffset;
29912974 unsigned segmentByteSize = getSegmentByteSize (filledRangeRegion, oldExecSize);
29922975 G4_Declare* fp = nullptr ;
2993- if (useScratchMsg_
2994- )
2976+ if (useScratchMsg_)
29952977 {
29962978 G4_Imm* messageDescImm =
29972979 createFillSendMsgDesc (filledRangeRegion, oldExecSize);
@@ -3013,9 +2995,6 @@ SpillManagerGRF::createFillSendInstr(
30132995 off = offset >> SCRATCH_SPACE_ADDRESS_UNIT;
30142996 if (builder_->kernel .fg .getIsStackCallFunc () || builder_->kernel .fg .getHasStackCalls ())
30152997 fp = builder_->kernel .fg .getFramePtrDcl ();
3016-
3017- if (!fp && offset < SCRATCH_MSG_LIMIT)
3018- payload = builder_->Create_Src_Opnd_From_Dcl (builder_->getBuiltinR0 (), builder_->getRegionStride1 ());
30192998 }
30202999 }
30213000
@@ -4255,10 +4234,6 @@ void GlobalRA::expandSpillNonStackcall(
42554234 G4_SrcRegRegion* headerOpnd = builder->Create_Src_Opnd_From_Dcl (builder->getBuiltinR0 (), region);
42564235 G4_Imm* extDesc = builder->createImm (msgDesc->getExtendedDesc (), Type_UD);
42574236 G4_ExecSize execSize = inst->getExecSize (); // numRows > 1 ? 16 : 8;
4258- if (execSize < g4::SIMD8)
4259- execSize = g4::SIMD8;
4260- else if (execSize < g4::SIMD16 && numRows > 1 )
4261- execSize = g4::SIMD16;
42624237
42634238 auto sendInst = builder->createInternalSplitSendInst (nullptr , G4_sends, execSize,
42644239 inst->getDst (), headerOpnd, payloadToUse, msgDescImm,
@@ -4586,10 +4561,8 @@ void GlobalRA::expandFillIntrinsic(G4_BB* bb)
45864561}
45874562
45884563
4589- void GlobalRA::expandSpillFillIntrinsics (unsigned int spillSizeInBytes )
4564+ void GlobalRA::expandSpillFillIntrinsics ()
45904565{
4591- auto globalScratchOffset = kernel.getInt32KernelAttr (Attributes::ATTR_SpillMemOffset);
4592-
45934566 for (auto bb : kernel.fg )
45944567 {
45954568 expandSpillIntrinsic (bb);
0 commit comments