HPCToolkit
PowerISA Class Referenceabstract

#include <PowerISA.hpp>

Inheritance diagram for PowerISA:
Collaboration diagram for PowerISA:

Public Member Functions

 PowerISA ()
 
virtual ~PowerISA ()
 
virtual ushort getInsnSize (MachInsn *GCC_ATTR_UNUSED mi)
 
virtual ushort getInsnNumOps (MachInsn *GCC_ATTR_UNUSED mi)
 
virtual InsnDesc getInsnDesc (MachInsn *mi, ushort opIndex, ushort sz=0)
 
virtual VMA getInsnTargetVMA (MachInsn *mi, VMA pc, ushort opIndex, ushort sz=0)
 
virtual ushort getInsnNumDelaySlots (MachInsn *mi, ushort opIndex, ushort sz=0)
 
virtual bool isParallelWithSuccessor (MachInsn *GCC_ATTR_UNUSED mi1, ushort GCC_ATTR_UNUSED opIndex1, ushort GCC_ATTR_UNUSED sz1, MachInsn *GCC_ATTR_UNUSED mi2, ushort GCC_ATTR_UNUSED opIndex2, ushort GCC_ATTR_UNUSED sz2) const
 
virtual void decode (std::ostream &os, MachInsn *mi, VMA vma, ushort opIndex)
 
void attach ()
 
void detach ()
 
virtual ushort getInsnSize (MachInsn *mi)=0
 
virtual ushort getInsnNumOps (MachInsn *mi)=0
 
virtual bool isParallelWithSuccessor (MachInsn *mi1, ushort opIndex1, ushort sz1, MachInsn *mi2, ushort opIndex2, ushort sz2) const =0
 
virtual VMA convertVMAToOpVMA (VMA vma, ushort GCC_ATTR_UNUSED opIndex) const
 
virtual VMA convertOpVMAToVMA (VMA opvma, ushort &opIndex) const
 

Protected Member Functions

DecodingCachecacheLookup (MachInsn *cmi)
 
void cacheSet (MachInsn *cmi, ushort size)
 

Private Member Functions

 PowerISA (const PowerISA &GCC_ATTR_UNUSED x)
 
PowerISAoperator= (const PowerISA &GCC_ATTR_UNUSED x)
 

Private Attributes

struct disassemble_info * m_di
 
struct disassemble_info * m_di_dis
 
GNUbu_disdata m_dis_data
 

Static Private Attributes

static const ushort MINSN_SIZE = 4
 

Detailed Description

Definition at line 84 of file PowerISA.hpp.

Constructor & Destructor Documentation

◆ PowerISA() [1/2]

PowerISA::PowerISA ( )

Definition at line 136 of file PowerISA.cpp.

Here is the call graph for this function:

◆ ~PowerISA()

PowerISA::~PowerISA ( )
virtual

Definition at line 159 of file PowerISA.cpp.

◆ PowerISA() [2/2]

PowerISA::PowerISA ( const PowerISA &GCC_ATTR_UNUSED  x)
inlineprivate

Definition at line 124 of file PowerISA.hpp.

Member Function Documentation

◆ attach()

void ISA::attach ( )
inlineinherited

Definition at line 384 of file ISA.hpp.

Here is the caller graph for this function:

◆ cacheLookup()

DecodingCache* ISA::cacheLookup ( MachInsn cmi)
inlineprotectedinherited

Definition at line 489 of file ISA.hpp.

Here is the caller graph for this function:

◆ cacheSet()

void ISA::cacheSet ( MachInsn cmi,
ushort  size 
)
inlineprotectedinherited

Definition at line 501 of file ISA.hpp.

Here is the caller graph for this function:

◆ convertOpVMAToVMA()

virtual VMA ISA::convertOpVMAToVMA ( VMA  opvma,
ushort opIndex 
) const
inlinevirtualinherited

Reimplemented in IA64ISA.

Definition at line 475 of file ISA.hpp.

Here is the caller graph for this function:

◆ convertVMAToOpVMA()

virtual VMA ISA::convertVMAToOpVMA ( VMA  vma,
ushort GCC_ATTR_UNUSED  opIndex 
) const
inlinevirtualinherited

Definition at line 471 of file ISA.hpp.

Here is the caller graph for this function:

◆ decode()

void PowerISA::decode ( std::ostream &  os,
MachInsn mi,
VMA  vma,
ushort  opIndex 
)
virtual

Implements ISA.

Definition at line 270 of file PowerISA.cpp.

Here is the caller graph for this function:

◆ detach()

void ISA::detach ( )
inlineinherited

Definition at line 388 of file ISA.hpp.

Here is the caller graph for this function:

◆ getInsnDesc()

ISA::InsnDesc PowerISA::getInsnDesc ( MachInsn mi,
ushort  opIndex,
ushort  sz = 0 
)
virtual

Implements ISA.

Definition at line 167 of file PowerISA.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getInsnNumDelaySlots()

ushort PowerISA::getInsnNumDelaySlots ( MachInsn mi,
ushort  opIndex,
ushort  sz = 0 
)
virtual

Implements ISA.

Definition at line 260 of file PowerISA.cpp.

Here is the caller graph for this function:

◆ getInsnNumOps() [1/2]

virtual ushort PowerISA::getInsnNumOps ( MachInsn *GCC_ATTR_UNUSED  mi)
inlinevirtual

Definition at line 98 of file PowerISA.hpp.

Here is the call graph for this function:

◆ getInsnNumOps() [2/2]

virtual ushort ISA::getInsnNumOps ( MachInsn mi)
pure virtualinherited

Implemented in IA64ISA.

Here is the caller graph for this function:

◆ getInsnSize() [1/2]

virtual ushort PowerISA::getInsnSize ( MachInsn *GCC_ATTR_UNUSED  mi)
inlinevirtual

Definition at line 94 of file PowerISA.hpp.

◆ getInsnSize() [2/2]

virtual ushort ISA::getInsnSize ( MachInsn mi)
pure virtualinherited

Implemented in x86ISA, x86ISABinutils, and x86ISAXed.

Here is the caller graph for this function:

◆ getInsnTargetVMA()

VMA PowerISA::getInsnTargetVMA ( MachInsn mi,
VMA  pc,
ushort  opIndex,
ushort  sz = 0 
)
virtual

Implements ISA.

Definition at line 231 of file PowerISA.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isParallelWithSuccessor() [1/2]

virtual bool PowerISA::isParallelWithSuccessor ( MachInsn *GCC_ATTR_UNUSED  mi1,
ushort GCC_ATTR_UNUSED  opIndex1,
ushort GCC_ATTR_UNUSED  sz1,
MachInsn *GCC_ATTR_UNUSED  mi2,
ushort GCC_ATTR_UNUSED  opIndex2,
ushort GCC_ATTR_UNUSED  sz2 
) const
inlinevirtual

Definition at line 111 of file PowerISA.hpp.

Here is the call graph for this function:

◆ isParallelWithSuccessor() [2/2]

virtual bool ISA::isParallelWithSuccessor ( MachInsn mi1,
ushort  opIndex1,
ushort  sz1,
MachInsn mi2,
ushort  opIndex2,
ushort  sz2 
) const
pure virtualinherited
Here is the caller graph for this function:

◆ operator=()

PowerISA& PowerISA::operator= ( const PowerISA &GCC_ATTR_UNUSED  x)
inlineprivate

Definition at line 127 of file PowerISA.hpp.

Member Data Documentation

◆ m_di

struct disassemble_info* PowerISA::m_di
private

Definition at line 133 of file PowerISA.hpp.

◆ m_di_dis

struct disassemble_info* PowerISA::m_di_dis
private

Definition at line 134 of file PowerISA.hpp.

◆ m_dis_data

GNUbu_disdata PowerISA::m_dis_data
private

Definition at line 135 of file PowerISA.hpp.

◆ MINSN_SIZE

const ushort PowerISA::MINSN_SIZE = 4
staticprivate

Definition at line 132 of file PowerISA.hpp.


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