FreeTensor
Loading...
Searching...
No Matches
use_builtin_div.h
Go to the documentation of this file.
1#ifndef FREE_TENSOR_USE_BUILTIN_DIV_H
2#define FREE_TENSOR_USE_BUILTIN_DIV_H
3
7#include <func.h>
8#include <memory>
9#include <mutator.h>
10
11namespace freetensor {
12
13class UseBuiltinDiv : public CompTransientBounds<SymbolTable<Mutator>> {
15
17
18 protected:
19 using BaseClass::visit;
20 Stmt visitStmt(const Stmt &op) override;
21 Expr visit(const FloorDiv &op) override;
22 Expr visit(const CeilDiv &op) override;
23 Expr visit(const Mod &op) override;
24};
25
29Stmt useBuiltinDiv(const Stmt &op);
30
32
33} // namespace freetensor
34
35#endif // FREE_TENSOR_USE_BUILTIN_DIV_H
Definition: comp_transient_bounds.h:50
BaseClass::StmtRetType visit(const For &op) override
Definition: comp_transient_bounds.h:128
Definition: ref.h:24
Definition: use_builtin_div.h:13
Expr visit(const FloorDiv &op) override
Definition: use_builtin_div.cc:16
Stmt visitStmt(const Stmt &op) override
Definition: use_builtin_div.cc:8
#define DEFINE_PASS_FOR_FUNC(pass)
Definition: func.h:88
Definition: allocator.h:9
Stmt useBuiltinDiv(const Stmt &op)
Definition: use_builtin_div.cc:95