From: Alexandru Dutu Date: Mon, 25 Jun 2018 16:51:53 +0000 (-0400) Subject: gpu-compute: Remove unneeded Request::setVirt call X-Git-Tag: v19.0.0.0~2020 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=90d448080e283a6ba4aca7677b985d4807a40476;p=gem5.git gpu-compute: Remove unneeded Request::setVirt call This sets the members of a Request object to the values they already hold, except the atomicOpFunctor which is set to nullptr. This call introduces a bug for atomics and is not useful for non-atomic requests. This changeset is also adding the wave PC and instruction sequence number to the Request object. Change-Id: I62f7b4a597483b0aa848a0cfbc72181e1063f56a Reviewed-on: https://gem5-review.googlesource.com/11549 Reviewed-by: Jason Lowe-Power Reviewed-by: Anthony Gutierrez Reviewed-by: Matt Sinclair Maintainer: Anthony Gutierrez --- diff --git a/src/gpu-compute/compute_unit.cc b/src/gpu-compute/compute_unit.cc index 1a174c98b..fd328adca 100644 --- a/src/gpu-compute/compute_unit.cc +++ b/src/gpu-compute/compute_unit.cc @@ -747,9 +747,10 @@ ComputeUnit::sendRequest(GPUDynInstPtr gpuDynInst, int index, PacketPtr pkt) updatePageDivergenceDist(tmp_vaddr); - pkt->req->setVirt(pkt->req->getAsid(), tmp_vaddr, pkt->req->getSize(), - pkt->req->getFlags(), pkt->req->masterId(), - pkt->req->getPC()); + // set PC in request + pkt->req->setPC(gpuDynInst->wavefront()->pc()); + + pkt->req->setReqInstSeqNum(gpuDynInst->seqNum()); // figure out the type of the request to set read/write BaseTLB::Mode TLB_mode;