FreeTensor
Loading...
Searching...
No Matches
List of all members
freetensor::CeilDivNode Class Reference

#include <expr.h>

Inheritance diagram for freetensor::CeilDivNode:
Inheritance graph
[legend]
Collaboration diagram for freetensor::CeilDivNode:
Collaboration graph
[legend]

Additional Inherited Members

- Public Types inherited from freetensor::EnableSelf< ASTPart >
typedef ASTPart Self
 
- Public Member Functions inherited from freetensor::NonCommutativeBinaryExprNode
void compHash () override
 
bool isCommutative () const override
 
- Public Member Functions inherited from freetensor::BinaryExprNode
bool isBinary () const override
 
std::vector< Exprchildren () const override
 
virtual bool isCommutative () const =0
 
- Public Member Functions inherited from freetensor::ExprNode
bool isExpr () const override
 
virtual bool isConst () const
 
virtual bool isBinary () const
 
virtual bool isUnary () const
 
virtual std::vector< Ref< ExprNode > > children () const =0
 
Ref< ExprNodeparentExpr () const
 
Ref< StmtNodeparentStmt () const
 
void modifiedHook () override
 
DataType dtype ()
 
void resetDType ()
 
virtual void inferDType ()=0
 
 DEFINE_NODE_ACCESS (Expr)
 
- Public Member Functions inherited from freetensor::ASTNode
virtual ~ASTNode ()
 
virtual ASTNodeType nodeType () const =0
 
bool isAST () const override
 
virtual bool isFunc () const
 
virtual bool isStmt () const
 
virtual bool isExpr () const
 
Ref< ASTNodeparentAST () const
 
std::source_location debugBlame () const
 
void setDebugBlame (std::source_location loc)
 
 DEFINE_NODE_ACCESS (AST)
 
- Public Member Functions inherited from freetensor::ASTPart
virtual ~ASTPart ()
 
 ASTPart (ASTPart &&other)
 
 ASTPart (const ASTPart &other)
 
ASTPartoperator= (ASTPart &&)
 
ASTPartoperator= (const ASTPart &)
 
bool trySetParent (const Ref< ASTPart > &parent)
 
void resetParent ()
 
Ref< ASTPartparent () const
 
bool isSubTree () const
 
int depth () const
 
virtual void modifiedHook ()
 
size_t hash ()
 
virtual bool isAST () const
 
- Public Member Functions inherited from freetensor::EnableSelf< ASTPart >
Ref< ASTPartself () const
 
- Public Attributes inherited from freetensor::BinaryExprNode
SubTree< ExprNodelhs_ = ChildOf{this}
 
SubTree< ExprNoderhs_ = ChildOf{this}
 
- Protected Member Functions inherited from freetensor::ASTPart
void lock ()
 
void unlock ()
 
virtual void compHash ()=0
 
void resetHash ()
 
- Protected Attributes inherited from freetensor::ExprNode
std::optional< DataTypedtype_
 
- Protected Attributes inherited from freetensor::ASTPart
size_t hash_ = ~0ull
 
std::atomic_flag lock_ = ATOMIC_FLAG_INIT
 

Detailed Description

Integer division, rounded towards positive infinity

CeilDiv nodes are easy to analyze, and will be replaced by RoundTowards0Div nodes before codegen if possible


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