diff --git a/src/arch/amdgpu/gcn3/insts/op_encodings.hh b/src/arch/amdgpu/gcn3/insts/op_encodings.hh index 27b9b99aa6..24edfa7cd1 100644 --- a/src/arch/amdgpu/gcn3/insts/op_encodings.hh +++ b/src/arch/amdgpu/gcn3/insts/op_encodings.hh @@ -886,12 +886,12 @@ namespace Gcn3ISA for (int lane = 0; lane < NumVecElemPerVecReg; ++lane) { if (gpuDynInst->exec_mask[lane]) { Addr vaddr = gpuDynInst->addr[lane]; - AtomicOpFunctor* amo_op = + auto amo_op = gpuDynInst->makeAtomicOpFunctor( &(reinterpret_cast( gpuDynInst->a_data))[lane], &(reinterpret_cast( - gpuDynInst->x_data))[lane]).get(); + gpuDynInst->x_data))[lane]); T tmp = wf->ldsChunk->read(vaddr); (*amo_op)(reinterpret_cast(&tmp));