gem5
v20.1.0.0
|
#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, MachInst inst) |
bool | needMoreBytes () |
bool | instReady () |
void | takeOverFrom (Decoder *old) |
StaticInstPtr | decodeInst (ExtMachInst mach_inst) |
StaticInstPtr | decode (ExtMachInst mach_inst, Addr addr) |
Decode a machine instruction. More... | |
StaticInstPtr | decode (RiscvISA::PCState &nextPC) |
Public Member Functions inherited from InstDecoder | |
virtual StaticInstPtr | fetchRomMicroop (MicroPC micropc, StaticInstPtr curMacroop) |
Protected Attributes | |
ExtMachInst | emi |
bool | instDone |
Private Attributes | |
DecodeCache::InstMap< ExtMachInst > | instMap |
bool | aligned |
bool | mid |
bool | more |
Definition at line 46 of file decoder.hh.
|
inline |
Definition at line 60 of file decoder.hh.
References reset().
|
inline |
Definition at line 65 of file decoder.hh.
Referenced by decode(), and moreBytes().
StaticInstPtr RiscvISA::Decoder::decode | ( | ExtMachInst | mach_inst, |
Addr | addr | ||
) |
Decode a machine instruction.
mach_inst | The binary instruction to decode. |
A | pointer to the corresponding StaticInst object. |
Definition at line 80 of file decoder.cc.
References addr, decodeInst(), DPRINTF, instMap, and ArmISA::si.
Referenced by decode().
StaticInstPtr RiscvISA::Decoder::decode | ( | RiscvISA::PCState & | nextPC | ) |
Definition at line 94 of file decoder.cc.
References compressed(), decode(), emi, GenericISA::PCStateBase::instAddr(), instDone, and GenericISA::SimplePCState< MachInst >::npc().
StaticInstPtr RiscvISA::Decoder::decodeInst | ( | ExtMachInst | mach_inst | ) |
Referenced by decode().
|
inline |
Definition at line 72 of file decoder.hh.
References instDone.
Definition at line 50 of file decoder.cc.
References aligned, compressed(), DPRINTF, emi, instDone, letoh(), RiscvISA::LowerBitMask, mid, more, RiscvISA::pc, and RiscvISA::UpperBitMask.
|
inline |
Definition at line 71 of file decoder.hh.
References more.
|
inline |
Definition at line 62 of file decoder.hh.
void RiscvISA::Decoder::reset | ( | ) |
|
inline |
Definition at line 73 of file decoder.hh.
|
private |
Definition at line 50 of file decoder.hh.
Referenced by moreBytes(), and reset().
|
protected |
Definition at line 56 of file decoder.hh.
Referenced by decode(), moreBytes(), and reset().
|
protected |
Definition at line 57 of file decoder.hh.
Referenced by decode(), instReady(), moreBytes(), and reset().
|
private |
Definition at line 49 of file decoder.hh.
Referenced by decode().
|
private |
Definition at line 51 of file decoder.hh.
Referenced by moreBytes(), and reset().
|
private |
Definition at line 52 of file decoder.hh.
Referenced by moreBytes(), needMoreBytes(), and reset().