From e5cccc05260062b8c30dec5484f9eae8c9d90ec1 Mon Sep 17 00:00:00 2001 From: Howard Mao Date: Mon, 18 Jul 2016 17:05:23 -0700 Subject: [PATCH] don't update xact_vol_irel if not a voluntary irel --- uncore/src/main/scala/agents/Trackers.scala | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/uncore/src/main/scala/agents/Trackers.scala b/uncore/src/main/scala/agents/Trackers.scala index 4d23a4cb..5b8d3080 100644 --- a/uncore/src/main/scala/agents/Trackers.scala +++ b/uncore/src/main/scala/agents/Trackers.scala @@ -257,9 +257,11 @@ trait AcceptsVoluntaryReleases extends HasVoluntaryReleaseMetadataBuffer { val irel_fire = (irel_is_allocating || irel_is_merging) && io.inner.release.ready when (irel_fire) { when (io.irel().first()) { - xact_vol_ir_r_type := io.irel().r_type - xact_vol_ir_src := io.irel().client_id - xact_vol_ir_client_xact_id := io.irel().client_xact_id + when (io.irel().isVoluntary()) { + xact_vol_ir_r_type := io.irel().r_type + xact_vol_ir_src := io.irel().client_id + xact_vol_ir_client_xact_id := io.irel().client_xact_id + } // If this release has data, set all the pending bits except the first. // Otherwise, clear all the pending bits pending_irel_data := Mux(io.irel().hasMultibeatData(),