From f028bd55e0ef74c350d0aa75e1523e7139c4f207 Mon Sep 17 00:00:00 2001 From: Matthew Poremba Date: Wed, 15 Feb 2023 07:45:57 -0800 Subject: [PATCH] arch-vega: Update API for some flat atomics Some recently submitted atomic instructions were using two older APIs. Update these to use the newer APIs to support all apertures and avoid compilation issue. Change-Id: Ibd6bc00177d33236946f54ef8e5c7544af322852 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/67977 Maintainer: Matt Sinclair Tested-by: kokoro Reviewed-by: Matt Sinclair --- src/arch/amdgpu/vega/insts/instructions.cc | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/src/arch/amdgpu/vega/insts/instructions.cc b/src/arch/amdgpu/vega/insts/instructions.cc index b6a78b26e4..45c84910f2 100644 --- a/src/arch/amdgpu/vega/insts/instructions.cc +++ b/src/arch/amdgpu/vega/insts/instructions.cc @@ -44984,13 +44984,11 @@ namespace VegaISA gpuDynInst->latency.init(gpuDynInst->computeUnit()); gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod()); - ConstVecOperandU64 addr(gpuDynInst, extData.ADDR); ConstVecOperandU32 data(gpuDynInst, extData.DATA); - addr.read(); data.read(); - calcAddr(gpuDynInst, addr, extData.SADDR, instData.OFFSET); + calcAddr(gpuDynInst, extData.ADDR, extData.SADDR, instData.OFFSET); for (int lane = 0; lane < NumVecElemPerVecReg; ++lane) { if (gpuDynInst->exec_mask[lane]) { @@ -44999,8 +44997,7 @@ namespace VegaISA } } - gpuDynInst->computeUnit()->globalMemoryPipe. - issueRequest(gpuDynInst); + issueRequestHelper(gpuDynInst); } // execute void @@ -45091,13 +45088,11 @@ namespace VegaISA gpuDynInst->latency.init(gpuDynInst->computeUnit()); gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod()); - ConstVecOperandU64 addr(gpuDynInst, extData.ADDR); ConstVecOperandU32 data(gpuDynInst, extData.DATA); - addr.read(); data.read(); - calcAddr(gpuDynInst, addr, extData.SADDR, instData.OFFSET); + calcAddr(gpuDynInst, extData.ADDR, extData.SADDR, instData.OFFSET); for (int lane = 0; lane < NumVecElemPerVecReg; ++lane) { if (gpuDynInst->exec_mask[lane]) { @@ -45106,8 +45101,7 @@ namespace VegaISA } } - gpuDynInst->computeUnit()->globalMemoryPipe. - issueRequest(gpuDynInst); + issueRequestHelper(gpuDynInst); } // execute void @@ -45226,13 +45220,11 @@ namespace VegaISA gpuDynInst->latency.init(gpuDynInst->computeUnit()); gpuDynInst->latency.set(gpuDynInst->computeUnit()->clockPeriod()); - ConstVecOperandU64 addr(gpuDynInst, extData.ADDR); ConstVecOperandU32 data(gpuDynInst, extData.DATA); - addr.read(); data.read(); - calcAddr(gpuDynInst, addr, extData.SADDR, instData.OFFSET); + calcAddr(gpuDynInst, extData.ADDR, extData.SADDR, instData.OFFSET); for (int lane = 0; lane < NumVecElemPerVecReg; ++lane) { if (gpuDynInst->exec_mask[lane]) { @@ -45241,8 +45233,7 @@ namespace VegaISA } } - gpuDynInst->computeUnit()->globalMemoryPipe. - issueRequest(gpuDynInst); + issueRequestHelper(gpuDynInst); } // execute void