Skip to content

Commit

Permalink
Let EOT send participate in swsb token assignment.
Browse files Browse the repository at this point in the history
using same sbid in send instructions might cause a potential stall.
  • Loading branch information
petechou authored and igcbot committed Dec 18, 2024
1 parent e4cdf12 commit df6763c
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion visa/BinaryEncodingIGA.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -995,7 +995,7 @@ void BinaryEncodingIGA::SetSWSB(G4_INST *inst, SWSB &sw) {
// - send has only distance --> $0 and distance
// This workaround can be removed once vISA doesn't produce such SWSB.
// Currently this could happen only on EOT send.
if (inst->isSend() && !sw.hasBothDistAndToken() &&
if (inst->isSend() &&
!sw.verify(getIGASWSBEncodeMode(), SWSB::InstType::SEND)) {
sw.tokenType = SWSB::TokenType::SET;
if (sw.hasDist()) {
Expand Down
2 changes: 1 addition & 1 deletion visa/LocalScheduler/SWSB_G4IR.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3033,7 +3033,7 @@ void SWSB::tokenAllocation() {
printf("\n=======nodeID: %d, startID: %d, endID: %d\n", node->getNodeID(),
node->getLiveStartID(), node->getLiveEndID());
#endif
if (inst->isEOT()) {
if (!fg.builder->hasFourALUPipes() && inst->isEOT()) {
continue;
}

Expand Down

0 comments on commit df6763c

Please sign in to comment.