Tensor Comprehensions
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
schedule_tree_matcher.h
Go to the documentation of this file.
1
16
#pragma once
17
18
#include <tuple>
19
#include <utility>
20
#include <vector>
21
22
#include "
tc/core/polyhedral/schedule_tree.h
"
23
#include "
tc/core/polyhedral/scop.h
"
24
25
namespace
tc {
26
namespace
polyhedral {
27
28
// Return the union of the reduction init statements as well as
29
// the identifiers of all reduction update statements
30
// that appear in "domain", assuming "domain" only contains
31
// reduction init and update statements.
32
// If "domain" contains any other statements, then return an empty vector
33
// of identifiers.
34
std::pair<isl::union_set, std::vector<isl::id>> reductionInitsUpdates(
35
isl::union_set domain,
36
const
Scop& scop);
37
38
// Find the first band member that corresponds to a reduction.
39
// TODO: heuristic to choose the "best" band member in presence of multiple
40
// reductions.
41
int
findFirstReductionDim(isl::multi_union_pw_aff islMupa,
const
Scop& scop);
42
43
}
// namespace polyhedral
44
}
// namespace tc
45
46
#include "
tc/core/polyhedral/schedule_tree_matcher-inl.h
"
scop.h
schedule_tree_matcher-inl.h
schedule_tree.h
include
tc
core
polyhedral
schedule_tree_matcher.h
Generated by
1.8.5