| 
    Tiramisu Compiler
    
   | 
 
A class that represents a synchronization object. More...
#include <expr.h>
Inherits tiramisu::expr.
Public Member Functions | |
| sync () | |
  Public Member Functions inherited from tiramisu::expr | |
| expr () | |
| Create an undefined expression.  More... | |
| expr (tiramisu::op_t o, tiramisu::primitive_t dtype, tiramisu::expr expr0) | |
Create a cast expression to type t (a unary operator).  More... | |
| expr (tiramisu::op_t o, tiramisu::expr expr0) | |
| Create an expression for a unary operator.  More... | |
| expr (tiramisu::op_t o, std::string name) | |
| Create an expression for a unary operator that applies on a variable.  More... | |
| expr (tiramisu::op_t o, tiramisu::expr expr0, tiramisu::expr expr1) | |
| Construct an expression for a binary operator.  More... | |
| expr (tiramisu::op_t o, tiramisu::expr expr0, tiramisu::expr expr1, tiramisu::expr expr2) | |
| Construct an expression for a ternary operator.  More... | |
| expr (tiramisu::op_t o, std::string name, std::vector< tiramisu::expr > vec, tiramisu::primitive_t type) | |
| Construct an access or a call.  More... | |
| expr (uint8_t val) | |
| Construct an unsigned 8-bit integer expression.  More... | |
| expr (int8_t val) | |
| Construct a signed 8-bit integer expression.  More... | |
| expr (uint16_t val) | |
| Construct an unsigned 16-bit integer expression.  More... | |
| expr (int16_t val) | |
| Construct a signed 16-bit integer expression.  More... | |
| expr (uint32_t val) | |
| Construct an unsigned 32-bit integer expression.  More... | |
| expr (int32_t val) | |
| Construct a signed 32-bit integer expression.  More... | |
| expr (uint64_t val) | |
| Construct an unsigned 64-bit integer expression.  More... | |
| expr (int64_t val) | |
| Construct a signed 64-bit integer expression.  More... | |
| expr (float val) | |
| Construct a 32-bit float expression.  More... | |
| tiramisu::expr | copy () const | 
| Copy an expression.  More... | |
| expr (double val) | |
| Construct a 64-bit float expression.  More... | |
| int64_t | get_int_val () const | 
| double | get_double_val () const | 
| const tiramisu::expr & | get_operand (int i) const | 
Return the value of the i 'th operand of the expression.  More... | |
| int | get_n_arg () const | 
| Return the number of arguments of the operator.  More... | |
| tiramisu::expr_t | get_expr_type () const | 
| Return the type of the expression (tiramisu::expr_type).  More... | |
| tiramisu::primitive_t | get_data_type () const | 
| Get the data type of the expression.  More... | |
| const std::string & | get_name () const | 
| Get the name of the ID or the variable represented by this expressions.  More... | |
| void | set_name (std::string &name) | 
| tiramisu::expr | replace_op_in_expr (const std::string &to_replace, const std::string &replace_with) | 
| tiramisu::op_t | get_op_type () const | 
| Get the type of the operator (tiramisu::op_t).  More... | |
| const std::vector< tiramisu::expr > & | get_access () const | 
| Return a vector of the access of the computation or array.  More... | |
| const std::vector< tiramisu::expr > & | get_arguments () const | 
| Return the arguments of an external function call.  More... | |
| int | get_n_dim_access () const | 
| Get the number of dimensions in the access vector.  More... | |
| bool | is_defined () const | 
| Return true if the expression is defined.  More... | |
| bool | is_equal (tiramisu::expr e) const | 
Return true if e is identical to this expression.  More... | |
| expr | operator+ (tiramisu::expr other) const | 
| Addition.  More... | |
| expr | operator- (tiramisu::expr other) const | 
| Subtraction.  More... | |
| expr | operator/ (tiramisu::expr other) const | 
| Division.  More... | |
| expr | operator* (tiramisu::expr other) const | 
| Multiplication.  More... | |
| expr | operator% (tiramisu::expr other) const | 
| Modulo.  More... | |
| expr | operator>> (tiramisu::expr other) const | 
| Right shift operator.  More... | |
| expr | operator<< (tiramisu::expr other) const | 
| Left shift operator.  More... | |
| tiramisu::expr | operator&& (tiramisu::expr e1) const | 
| Logical and of two expressions.  More... | |
| tiramisu::expr | operator|| (tiramisu::expr e1) const | 
| Logical and of two expressions.  More... | |
| tiramisu::expr | operator- () const | 
| Expression multiplied by (-1).  More... | |
| tiramisu::expr | operator! () const | 
| Logical NOT of an expression.  More... | |
| tiramisu::expr & | operator= (tiramisu::expr const &) | 
| tiramisu::expr | operator< (tiramisu::expr e1) const | 
| Less than operator.  More... | |
| tiramisu::expr | operator<= (tiramisu::expr e1) const | 
| Less than or equal operator.  More... | |
| tiramisu::expr | operator> (tiramisu::expr e1) const | 
| Greater than operator.  More... | |
| tiramisu::expr | operator>= (tiramisu::expr e1) const | 
| Greater than or equal operator.  More... | |
| void | set_access (std::vector< tiramisu::expr > vector) | 
| Set the access of a computation or an array.  More... | |
| void | set_access_dimension (int i, tiramisu::expr acc) | 
| Set an element of the vector of accesses of a computation.  More... | |
| void | set_arguments (std::vector< tiramisu::expr > vector) | 
| Set the arguments of an external function call.  More... | |
| void | dump (bool exhaustive) const | 
| Dump the object on standard output (dump most of the fields of the expression class).  More... | |
| bool | is_constant () const | 
| Return true if this expression is a literal constant (i.e., 0, 1, 2, ...).  More... | |
| bool | is_unbounded () const | 
| tiramisu::expr | simplify () const | 
| Simplify the expression.  More... | |
| std::string | to_str () const | 
| expr | substitute (std::vector< std::pair< var, expr >> substitutions) const | 
Returns a new expression where for every (var, sub) pair in substitutions, var in the original expression is replaced by sub.  More... | |
| expr | substitute_access (std::string original, std::string substitute) const | 
Returns an expression where every access to a computation named original is replaced with an access to a computation named substitute, with the same access indices.  More... | |
| expr | apply_to_operands (std::function< expr(const expr &)> f) const | 
| uint8_t | get_uint8_value () const | 
| Return the actual value of the expression.  More... | |
| int8_t | get_int8_value () const | 
| Return the actual value of the expression.  More... | |
| uint16_t | get_uint16_value () const | 
| Return the actual value of the expression.  More... | |
| int16_t | get_int16_value () const | 
| Return the actual value of the expression.  More... | |
| uint32_t | get_uint32_value () const | 
| Return the actual value of the expression.  More... | |
| int32_t | get_int32_value () const | 
| Return the actual value of the expression.  More... | |
| uint64_t | get_uint64_value () const | 
| Return the actual value of the expression.  More... | |
| int64_t | get_int64_value () const | 
| Return the actual value of the expression.  More... | |
| float | get_float32_value () const | 
| Return the actual value of the expression.  More... | |
| double | get_float64_value () const | 
| Return the actual value of the expression.  More... | |
| tiramisu::expr | operator== (tiramisu::expr e1) const | 
| Comparison operator.  More... | |
| tiramisu::expr | operator!= (tiramisu::expr e1) const | 
| Comparison operator.  More... | |
Additional Inherited Members | |
  Static Public Member Functions inherited from tiramisu::expr | |
| static expr | unbounded () | 
| Create a variable that can be used that a dimension is unbounded.  More... | |
  Protected Attributes inherited from tiramisu::expr | |
| std::string | name | 
| Identifier name.  More... | |
| tiramisu::primitive_t | dtype | 
| Data type.  More... | |
| tiramisu::expr_t | etype | 
| The type of the expression.  More... | |
A class that represents a synchronization object.
e.g. in the context of GPUs this will get transformed to __syncthreads();
      
  | 
  inline | 
Definition at line 1691 of file expr.h.
References tiramisu::e_sync, tiramisu::o_none, and tiramisu::p_none.