Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
Loading...
Searching...
No Matches
Public Member Functions | List of all members
proteus::PointerStorage Class Reference

#include <VarStorage.hpp>

Inheritance diagram for proteus::PointerStorage:
Inheritance graph
[legend]
Collaboration diagram for proteus::PointerStorage:
Collaboration graph
[legend]

Public Member Functions

 PointerStorage (AllocaInst *PtrSlot, IRBuilderBase &IRB, Type *PointerElemTy)
 
 PointerStorage (Value *PtrSlot, IRBuilderBase &IRB, Type *PointerElemTy)
 
std::unique_ptr< VarStorageclone () const override
 
Value * getSlot () const override
 
Value * loadValue () const override
 
void storeValue (Value *Val) override
 
Value * loadPointer () const
 
void storePointer (Value *Ptr)
 
Type * getAllocatedType () const override
 
Type * getValueType () const override
 
- Public Member Functions inherited from proteus::VarStorage
 VarStorage (IRBuilderBase &IRB)
 
virtual ~VarStorage ()=default
 

Additional Inherited Members

- Protected Attributes inherited from proteus::VarStorage
IRBuilderBaseIRB
 

Constructor & Destructor Documentation

◆ PointerStorage() [1/2]

proteus::PointerStorage::PointerStorage ( AllocaInst PtrSlot,
IRBuilderBase IRB,
Type *  PointerElemTy 
)
inline

◆ PointerStorage() [2/2]

proteus::PointerStorage::PointerStorage ( Value *  PtrSlot,
IRBuilderBase IRB,
Type *  PointerElemTy 
)
inline

Member Function Documentation

◆ clone()

std::unique_ptr< VarStorage > proteus::PointerStorage::clone ( ) const
inlineoverridevirtual

Implements proteus::VarStorage.

◆ getAllocatedType()

Type * proteus::PointerStorage::getAllocatedType ( ) const
overridevirtual

Implements proteus::VarStorage.

◆ getSlot()

Value * proteus::PointerStorage::getSlot ( ) const
overridevirtual

Implements proteus::VarStorage.

◆ getValueType()

Type * proteus::PointerStorage::getValueType ( ) const
overridevirtual

Implements proteus::VarStorage.

◆ loadPointer()

Value * proteus::PointerStorage::loadPointer ( ) const

◆ loadValue()

Value * proteus::PointerStorage::loadValue ( ) const
overridevirtual

Implements proteus::VarStorage.

◆ storePointer()

void proteus::PointerStorage::storePointer ( Value *  Ptr)

◆ storeValue()

void proteus::PointerStorage::storeValue ( Value *  Val)
overridevirtual

Implements proteus::VarStorage.


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