| 
    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