|
gem5
v21.1.0.2
|
#include <decoder.hh>
Public Member Functions | |
| Decoder (ISA *isa=nullptr) | |
| void | process () |
| void | reset () |
| bool | compressed (ExtMachInst inst) |
| void | moreBytes (const PCState &pc, Addr fetchPC) |
| bool | needMoreBytes () |
| bool | instReady () |
| void | takeOverFrom (Decoder *old) |
| StaticInstPtr | decode (RiscvISA::PCState &nextPC) |
Public Member Functions inherited from gem5::InstDecoder | |
| template<typename MoreBytesType > | |
| InstDecoder (MoreBytesType *mb_buf) | |
| virtual StaticInstPtr | fetchRomMicroop (MicroPC micropc, StaticInstPtr curMacroop) |
| void * | moreBytesPtr () const |
| size_t | moreBytesSize () const |
| Addr | pcMask () const |
Protected Member Functions | |
| StaticInstPtr | decodeInst (ExtMachInst mach_inst) |
| StaticInstPtr | decode (ExtMachInst mach_inst, Addr addr) |
| Decode a machine instruction. More... | |
Protected Attributes | |
| ExtMachInst | emi |
| uint32_t | machInst |
| bool | instDone |
Protected Attributes inherited from gem5::InstDecoder | |
| void * | _moreBytesPtr |
| size_t | _moreBytesSize |
| Addr | _pcMask |
Private Attributes | |
| decode_cache::InstMap< ExtMachInst > | instMap |
| bool | aligned |
| bool | mid |
| bool | more |
Definition at line 48 of file decoder.hh.
|
inline |
Definition at line 70 of file decoder.hh.
References reset().
|
inline |
Definition at line 75 of file decoder.hh.
Referenced by decode(), and moreBytes().
|
protected |
Decode a machine instruction.
| mach_inst | The binary instruction to decode. |
| A | pointer to the corresponding StaticInst object. |
Definition at line 85 of file decoder.cc.
References gem5::X86ISA::addr, decodeInst(), DPRINTF, instMap, and gem5::ArmISA::si.
Referenced by decode().
| StaticInstPtr gem5::RiscvISA::Decoder::decode | ( | RiscvISA::PCState & | nextPC | ) |
Definition at line 100 of file decoder.cc.
References compressed(), decode(), emi, gem5::GenericISA::PCStateBase::instAddr(), instDone, machInst, and gem5::GenericISA::SimplePCState< InstWidth >::npc().
|
protected |
Referenced by decode().
|
inline |
Definition at line 82 of file decoder.hh.
References instDone.
Definition at line 51 of file decoder.cc.
References aligned, gem5::bits(), compressed(), DPRINTF, emi, instDone, gem5::letoh(), machInst, mid, more, gem5::RiscvISA::pc, and gem5::replaceBits().
|
inline |
Definition at line 81 of file decoder.hh.
References more.
|
inline |
Definition at line 72 of file decoder.hh.
| void gem5::RiscvISA::Decoder::reset | ( | ) |
|
inline |
Definition at line 83 of file decoder.hh.
|
private |
Definition at line 52 of file decoder.hh.
Referenced by moreBytes(), and reset().
|
protected |
Definition at line 58 of file decoder.hh.
Referenced by decode(), moreBytes(), and reset().
|
protected |
Definition at line 60 of file decoder.hh.
Referenced by decode(), instReady(), moreBytes(), and reset().
|
private |
Definition at line 51 of file decoder.hh.
Referenced by decode().
|
protected |
Definition at line 59 of file decoder.hh.
Referenced by decode(), and moreBytes().
|
private |
Definition at line 53 of file decoder.hh.
Referenced by moreBytes(), and reset().
|
private |
Definition at line 54 of file decoder.hh.
Referenced by moreBytes(), needMoreBytes(), and reset().