|
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.
1.8.6