gem5  v20.1.0.0
Public Member Functions | Protected Attributes | Static Protected Attributes | List of all members
PowerISA::Decoder Class Reference

#include <decoder.hh>

Inheritance diagram for PowerISA::Decoder:
InstDecoder

Public Member Functions

 Decoder (ISA *isa=nullptr)
 
void process ()
 
void reset ()
 
void moreBytes (const PCState &pc, Addr fetchPC, MachInst inst)
 
void moreBytes (MachInst machInst)
 
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 (PowerISA::PCState &nextPC)
 
- Public Member Functions inherited from InstDecoder
virtual StaticInstPtr fetchRomMicroop (MicroPC micropc, StaticInstPtr curMacroop)
 

Protected Attributes

ExtMachInst emi
 
bool instDone
 

Static Protected Attributes

static GenericISA::BasicDecodeCache defaultCache
 A cache of decoded instruction objects. More...
 

Detailed Description

Definition at line 41 of file decoder.hh.

Constructor & Destructor Documentation

◆ Decoder()

PowerISA::Decoder::Decoder ( ISA isa = nullptr)
inline

Definition at line 49 of file decoder.hh.

Member Function Documentation

◆ decode() [1/2]

StaticInstPtr PowerISA::Decoder::decode ( ExtMachInst  mach_inst,
Addr  addr 
)
inline

Decode a machine instruction.

Parameters
mach_instThe binary instruction to decode.
Return values
Apointer to the corresponding StaticInst object.

Definition at line 106 of file decoder.hh.

References addr, GenericISA::BasicDecodeCache::decode(), and defaultCache.

Referenced by decode().

◆ decode() [2/2]

StaticInstPtr PowerISA::Decoder::decode ( PowerISA::PCState &  nextPC)
inline

Definition at line 112 of file decoder.hh.

References decode(), emi, and instDone.

◆ decodeInst()

StaticInstPtr PowerISA::Decoder::decodeInst ( ExtMachInst  mach_inst)

◆ instReady()

bool PowerISA::Decoder::instReady ( )
inline

Definition at line 88 of file decoder.hh.

References instDone.

◆ moreBytes() [1/2]

void PowerISA::Decoder::moreBytes ( const PCState &  pc,
Addr  fetchPC,
MachInst  inst 
)
inline

Definition at line 67 of file decoder.hh.

References betoh(), emi, and instDone.

Referenced by moreBytes().

◆ moreBytes() [2/2]

void PowerISA::Decoder::moreBytes ( MachInst  machInst)
inline

Definition at line 76 of file decoder.hh.

References moreBytes().

◆ needMoreBytes()

bool PowerISA::Decoder::needMoreBytes ( )
inline

Definition at line 82 of file decoder.hh.

◆ process()

void PowerISA::Decoder::process ( )
inline

Definition at line 54 of file decoder.hh.

◆ reset()

void PowerISA::Decoder::reset ( )
inline

Definition at line 59 of file decoder.hh.

References instDone.

◆ takeOverFrom()

void PowerISA::Decoder::takeOverFrom ( Decoder old)
inline

Definition at line 93 of file decoder.hh.

Member Data Documentation

◆ defaultCache

GenericISA::BasicDecodeCache PowerISA::Decoder::defaultCache
staticprotected

A cache of decoded instruction objects.

Definition at line 97 of file decoder.hh.

Referenced by decode().

◆ emi

ExtMachInst PowerISA::Decoder::emi
protected

Definition at line 45 of file decoder.hh.

Referenced by decode(), and moreBytes().

◆ instDone

bool PowerISA::Decoder::instDone
protected

Definition at line 46 of file decoder.hh.

Referenced by decode(), instReady(), moreBytes(), and reset().


The documentation for this class was generated from the following files:

Generated on Wed Sep 30 2020 14:03:07 for gem5 by doxygen 1.8.17