#include <DomainInstance.h>
Classes | |
struct | FieldIdTraits |
Public Types | |
enum | FieldId { Info, Next, Params, Requirements } |
Public Member Functions | |
DomainInstance (CommaRT &CRT) | |
void | init () |
const std::string & | getTypeName () const |
Returns the name of a domain_instance type. | |
const llvm::StructType * | getType () const |
Returns a structure type describing a domain_instance object. | |
const llvm::PointerType * | getPointerTypeTo () const |
Returns a pointer-to domain_instance structure type. | |
template<FieldId F> | |
FieldIdTraits< F >::FieldType * | getFieldType () const |
llvm::Value * | loadInfo (llvm::IRBuilder<> &builder, llvm::Value *Instance) const |
Loads the domain_info associated with the given domain_instance. | |
llvm::Value * | loadParamVec (llvm::IRBuilder<> &builder, llvm::Value *instance) const |
llvm::Value * | loadParam (llvm::IRBuilder<> &builder, llvm::Value *instance, unsigned paramIdx) const |
llvm::Value * | loadLocalVec (llvm::IRBuilder<> &builder, llvm::Value *instance) const |
Loads a pointer to the first element of the local instance vector. | |
void | setLocalVec (llvm::IRBuilder<> &builder, llvm::Value *instance, llvm::Value *vec) const |
Sets the local instance vector to vec . | |
llvm::Value * | loadLocalInstance (llvm::IRBuilder<> &builder, llvm::Value *instance, unsigned localID) const |
Loads the required domain with the given index. |
Definition at line 20 of file DomainInstance.h.
Definition at line 27 of file DomainInstance.h.
DomainInstance::DomainInstance | ( | CommaRT & | CRT | ) |
Definition at line 18 of file DomainInstance.cpp.
FieldIdTraits<F>::FieldType* comma::DomainInstance::getFieldType | ( | ) | const [inline] |
const llvm::PointerType * DomainInstance::getPointerTypeTo | ( | ) | const |
Returns a pointer-to domain_instance structure type.
Definition at line 50 of file DomainInstance.cpp.
const llvm::StructType * DomainInstance::getType | ( | ) | const |
Returns a structure type describing a domain_instance object.
Definition at line 45 of file DomainInstance.cpp.
const std::string& comma::DomainInstance::getTypeName | ( | ) | const [inline] |
Returns the name of a domain_instance type.
Definition at line 35 of file DomainInstance.h.
void DomainInstance::init | ( | ) |
Definition at line 24 of file DomainInstance.cpp.
llvm::Value * DomainInstance::loadInfo | ( | llvm::IRBuilder<> & | builder, | |
llvm::Value * | Instance | |||
) | const |
Loads the domain_info associated with the given domain_instance.
Definition at line 56 of file DomainInstance.cpp.
llvm::Value * DomainInstance::loadLocalInstance | ( | llvm::IRBuilder<> & | builder, | |
llvm::Value * | instance, | |||
unsigned | localID | |||
) | const |
Loads the required domain with the given index.
Definition at line 109 of file DomainInstance.cpp.
llvm::Value * DomainInstance::loadLocalVec | ( | llvm::IRBuilder<> & | builder, | |
llvm::Value * | instance | |||
) | const |
Loads a pointer to the first element of the local instance vector.
Definition at line 94 of file DomainInstance.cpp.
llvm::Value * DomainInstance::loadParam | ( | llvm::IRBuilder<> & | builder, | |
llvm::Value * | instance, | |||
unsigned | paramIdx | |||
) | const |
Loads the domain_instance corresponding to the formal parameter with the given index.
Loads the domain_view corresponding to a formal parameter from a domain_instance object, where index
identifies which parameter is sought.
Definition at line 80 of file DomainInstance.cpp.
llvm::Value * DomainInstance::loadParamVec | ( | llvm::IRBuilder<> & | builder, | |
llvm::Value * | instance | |||
) | const |
Loads a pointer to the first element of the parameter vector associated with the given domain_instance object.
Loads a pointer to the first element of the parameter vector associated with the given domain instance object.
Definition at line 68 of file DomainInstance.cpp.
void DomainInstance::setLocalVec | ( | llvm::IRBuilder<> & | builder, | |
llvm::Value * | instance, | |||
llvm::Value * | vec | |||
) | const |
Sets the local instance vector to vec
.
Definition at line 101 of file DomainInstance.cpp.