gem5  v20.0.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Member Functions | Public Attributes | Protected Attributes | Private Attributes | List of all members
HsaCode Class Referenceabstract

#include <hsa_code.hh>

Inheritance diagram for HsaCode:
HsailCode

Public Types

enum  MemorySegment {
  MemorySegment::NONE, MemorySegment::FLAT, MemorySegment::GLOBAL, MemorySegment::READONLY,
  MemorySegment::KERNARG, MemorySegment::GROUP, MemorySegment::PRIVATE, MemorySegment::SPILL,
  MemorySegment::ARG, MemorySegment::EXTSPACE0
}
 

Public Member Functions

 HsaCode (const std::string &name)
 
const std::string & name () const
 
int numInsts () const
 
std::vector< TheGpuISA::RawMachInst > * insts ()
 
void setReadonlyData (uint8_t *_readonly_data)
 
virtual int getSize (MemorySegment segment) const =0
 
virtual void generateHsaKernelInfo (HsaKernelInfo *hsaKernelInfo) const =0
 

Public Attributes

uint8_t * readonly_data
 
int funcarg_size
 

Protected Attributes

std::vector< TheGpuISA::RawMachInst > _insts
 

Private Attributes

const std::string _name
 

Detailed Description

Definition at line 55 of file hsa_code.hh.

Member Enumeration Documentation

◆ MemorySegment

Enumerator
NONE 
FLAT 
GLOBAL 
READONLY 
KERNARG 
GROUP 
PRIVATE 
SPILL 
ARG 
EXTSPACE0 

Definition at line 63 of file hsa_code.hh.

Constructor & Destructor Documentation

◆ HsaCode()

HsaCode::HsaCode ( const std::string &  name)
inline

Definition at line 58 of file hsa_code.hh.

Member Function Documentation

◆ generateHsaKernelInfo()

virtual void HsaCode::generateHsaKernelInfo ( HsaKernelInfo hsaKernelInfo) const
pure virtual

Implemented in HsailCode.

Referenced by ClDriver::ClDriver(), and setReadonlyData().

◆ getSize()

virtual int HsaCode::getSize ( MemorySegment  segment) const
pure virtual

Implemented in HsailCode.

Referenced by setReadonlyData().

◆ insts()

std::vector<TheGpuISA::RawMachInst>* HsaCode::insts ( )
inline

Definition at line 78 of file hsa_code.hh.

References _insts.

Referenced by ClDriver::ioctl().

◆ name()

const std::string& HsaCode::name ( ) const
inline

Definition at line 76 of file hsa_code.hh.

References _name.

Referenced by ClDriver::ClDriver(), ClDriver::ioctl(), and LabelMap::refLabel().

◆ numInsts()

int HsaCode::numInsts ( ) const
inline

Definition at line 77 of file hsa_code.hh.

References _insts.

Referenced by ClDriver::ClDriver(), and ClDriver::ioctl().

◆ setReadonlyData()

void HsaCode::setReadonlyData ( uint8_t *  _readonly_data)
inline

Definition at line 81 of file hsa_code.hh.

References generateHsaKernelInfo(), getSize(), and readonly_data.

Member Data Documentation

◆ _insts

std::vector<TheGpuISA::RawMachInst> HsaCode::_insts
protected

Definition at line 95 of file hsa_code.hh.

Referenced by HsailCode::init(), insts(), and numInsts().

◆ _name

const std::string HsaCode::_name
private

Definition at line 98 of file hsa_code.hh.

Referenced by name().

◆ funcarg_size

int HsaCode::funcarg_size

Definition at line 90 of file hsa_code.hh.

Referenced by HsailCode::init().

◆ readonly_data

uint8_t* HsaCode::readonly_data

Definition at line 89 of file hsa_code.hh.

Referenced by setReadonlyData().


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

Generated on Thu May 28 2020 16:21:46 for gem5 by doxygen 1.8.13