forked from OSchip/llvm-project
Update comments to address Sebastian's review
llvm-svn: 193741
This commit is contained in:
parent
703da2ea98
commit
d764fcbd5a
|
@ -560,7 +560,7 @@ public:
|
|||
__isl_give isl_set *getContext() const;
|
||||
__isl_give isl_space *getParamSpace() const;
|
||||
|
||||
/// @brief Get the assumped context for this Scop.
|
||||
/// @brief Get the assumed context for this Scop.
|
||||
///
|
||||
/// @return The assumed context of this Scop.
|
||||
__isl_give isl_set *getAssumedContext() const;
|
||||
|
|
|
@ -60,6 +60,8 @@ public:
|
|||
void pprint(llvm::raw_ostream &OS);
|
||||
|
||||
__isl_give isl_ast_node *getAst();
|
||||
|
||||
/// @brief Get the run-time conditions for the Scop.
|
||||
__isl_give isl_ast_expr *getRunCondition();
|
||||
|
||||
private:
|
||||
|
@ -68,7 +70,7 @@ private:
|
|||
isl_ast_expr *RunCondition;
|
||||
|
||||
__isl_give isl_union_map *getSchedule();
|
||||
void buildAssumedContext(__isl_keep isl_ast_build *Context);
|
||||
void buildRunCondition(__isl_keep isl_ast_build *Context);
|
||||
};
|
||||
} // End namespace polly.
|
||||
|
||||
|
@ -315,7 +317,16 @@ static __isl_give isl_ast_node *AtEachDomain(__isl_take isl_ast_node *Node,
|
|||
return isl_ast_node_set_annotation(Node, Id);
|
||||
}
|
||||
|
||||
void IslAst::buildAssumedContext(__isl_keep isl_ast_build *Context) {
|
||||
void IslAst::buildRunCondition(__isl_keep isl_ast_build *Context) {
|
||||
// The conditions that need to be checked at run-time for this scop are
|
||||
// available as an isl_set in the AssumedContext. We generate code for this
|
||||
// check as follows. First, we generate an isl_pw_aff that is 1, if a certain
|
||||
// combination of parameter values fulfills the conditions in the assumed
|
||||
// context, and that is 0 otherwise. We then translate this isl_pw_aff into
|
||||
// an isl_ast_expr. At run-time this expression can be evaluated and the
|
||||
// optimized scop can be executed conditionally according to the result of the
|
||||
// run-time check.
|
||||
|
||||
isl_aff *Zero =
|
||||
isl_aff_zero_on_domain(isl_local_space_from_space(S->getParamSpace()));
|
||||
isl_aff *One =
|
||||
|
@ -368,7 +379,7 @@ IslAst::IslAst(Scop *Scop, Dependences &D) : S(Scop) {
|
|||
&BuildInfo);
|
||||
}
|
||||
|
||||
buildAssumedContext(Context);
|
||||
buildRunCondition(Context);
|
||||
|
||||
Root = isl_ast_build_ast_from_schedule(Context, Schedule);
|
||||
|
||||
|
|
Loading…
Reference in New Issue