arch-vega: Add decoding for implemented insts
Certain instructions were implemented in instructions.cc, but weren't actually being decoded by the decoder, causing the decoder to return nullptr for valid instructions. This patch fixes the decoder to return the proper instruction class for implemented instructions Change-Id: I8d8525a1c435147017cb38d9df8e1675986ef04b Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/47521 Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com> Reviewed-by: Matthew Poremba <matthew.poremba@amd.com> Reviewed-by: Alex Dutu <alexandru.dutu@amd.com> Maintainer: Matt Sinclair <mattdsinclair@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
committed by
Matt Sinclair
parent
9fe9d83e5b
commit
06da510020
@@ -4158,19 +4158,19 @@ namespace VegaISA
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OP_VOP2__V_ADD_U32(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP2__V_ADD_U32(&iFmt->iFmt_VOP2);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OP_VOP2__V_SUB_U32(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP2__V_SUB_U32(&iFmt->iFmt_VOP2);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OP_VOP2__V_SUBREV_U32(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP2__V_SUBREV_U32(&iFmt->iFmt_VOP2);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
@@ -4446,7 +4446,7 @@ namespace VegaISA
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OP_SOP2__S_MUL_HI_I32(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_SOP2__S_MUL_I32(&iFmt->iFmt_SOP2);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
@@ -6942,31 +6942,31 @@ namespace VegaISA
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OPU_VOP3__V_MAD_F16(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP3__V_MAD_F16(&iFmt->iFmt_VOP3A);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OPU_VOP3__V_MAD_U16(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP3__V_MAD_U16(&iFmt->iFmt_VOP3A);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OPU_VOP3__V_MAD_I16(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP3__V_MAD_I16(&iFmt->iFmt_VOP3A);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OPU_VOP3__V_FMA_F16(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP3__V_FMA_F16(&iFmt->iFmt_VOP3A);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
Decoder::decode_OPU_VOP3__V_DIV_FIXUP_F16(MachInst iFmt)
|
||||
{
|
||||
return nullptr;
|
||||
return new Inst_VOP3__V_DIV_FIXUP_F16(&iFmt->iFmt_VOP3A);
|
||||
}
|
||||
|
||||
GPUStaticInst*
|
||||
|
||||
Reference in New Issue
Block a user