Talvos
0.1
SPIR-V interpreter and dynamic analysis framework
|
This class represents a function in a SPIR-V Module. More...
#include <talvos/Function.h>
Public Member Functions | |
Function (uint32_t Id, const Type *FunctionType) | |
Create a new function with an ID and a type. More... | |
void | addBlock (std::unique_ptr< Block > B) |
Add a block to this function. More... | |
void | addParam (uint32_t Id) |
Add a parameter to this function. More... | |
const Block * | getBlock (uint32_t Id) const |
Returns the block with ID Id . More... | |
const Block * | getFirstBlock () const |
Returns the first block in this function. More... | |
uint32_t | getFirstBlockId () const |
Returns the ID of the first block in this function. More... | |
uint32_t | getId () const |
Returns the ID of this function. More... | |
uint32_t | getParamId (uint32_t I) const |
Returns the ID of the parameter at index I . More... | |
size_t | getNumParams () const |
Returns the number of parameters in this function. More... | |
void | setFirstBlock (uint32_t Id) |
Sets the ID of the entry block in this function. More... | |
Function (const Function &)=delete | |
Function & | operator= (const Function &)=delete |
Private Types | |
typedef std::map< uint32_t, std::unique_ptr< Block > > | BlockMap |
A mapping from IDs to Blocks. More... | |
Private Attributes | |
uint32_t | Id |
The ID of this function. More... | |
const Type * | FunctionType |
The function type. More... | |
uint32_t | FirstBlockId |
The ID of the first block. More... | |
BlockMap | Blocks |
The blocks in the function. More... | |
std::vector< uint32_t > | Parameters |
The function parameter IDs. More... | |
This class represents a function in a SPIR-V Module.
Definition at line 23 of file Function.h.
|
private |
A mapping from IDs to Blocks.
Definition at line 64 of file Function.h.
talvos::Function::Function | ( | uint32_t | Id, |
const Type * | FunctionType | ||
) |
Create a new function with an ID and a type.
Definition at line 18 of file Function.cpp.
|
delete |
void talvos::Function::addBlock | ( | std::unique_ptr< Block > | B | ) |
Add a block to this function.
Definition at line 24 of file Function.cpp.
|
inline |
Add a parameter to this function.
Definition at line 39 of file Function.h.
|
inline |
Returns the block with ID Id
.
Definition at line 42 of file Function.h.
|
inline |
Returns the first block in this function.
Definition at line 45 of file Function.h.
|
inline |
Returns the ID of the first block in this function.
Definition at line 48 of file Function.h.
|
inline |
Returns the ID of this function.
Definition at line 51 of file Function.h.
|
inline |
Returns the number of parameters in this function.
Definition at line 57 of file Function.h.
|
inline |
Returns the ID of the parameter at index I
.
Definition at line 54 of file Function.h.
|
inline |
Sets the ID of the entry block in this function.
Definition at line 60 of file Function.h.
|
private |
The blocks in the function.
Definition at line 69 of file Function.h.
|
private |
The ID of the first block.
Definition at line 68 of file Function.h.
|
private |
The function type.
Definition at line 67 of file Function.h.
|
private |
The ID of this function.
Definition at line 66 of file Function.h.
|
private |
The function parameter IDs.
Definition at line 71 of file Function.h.