diff options
Diffstat (limited to 'polly/lib/Transform/ScheduleOptimizer.cpp')
-rw-r--r-- | polly/lib/Transform/ScheduleOptimizer.cpp | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/polly/lib/Transform/ScheduleOptimizer.cpp b/polly/lib/Transform/ScheduleOptimizer.cpp index b4257af9ecb..4f0c81edfde 100644 --- a/polly/lib/Transform/ScheduleOptimizer.cpp +++ b/polly/lib/Transform/ScheduleOptimizer.cpp @@ -470,10 +470,10 @@ isl::schedule_node ScheduleTreeOptimizer::applyRegisterTiling( } static bool isSimpleInnermostBand(const isl::schedule_node &Node) { - assert(isl_schedule_node_get_type(Node.keep()) == isl_schedule_node_band); - assert(isl_schedule_node_n_children(Node.keep()) == 1); + assert(isl_schedule_node_get_type(Node.get()) == isl_schedule_node_band); + assert(isl_schedule_node_n_children(Node.get()) == 1); - auto ChildType = isl_schedule_node_get_type(Node.child(0).keep()); + auto ChildType = isl_schedule_node_get_type(Node.child(0).get()); if (ChildType == isl_schedule_node_leaf) return true; @@ -483,12 +483,12 @@ static bool isSimpleInnermostBand(const isl::schedule_node &Node) { auto Sequence = Node.child(0); - for (int c = 0, nc = isl_schedule_node_n_children(Sequence.keep()); c < nc; + for (int c = 0, nc = isl_schedule_node_n_children(Sequence.get()); c < nc; ++c) { auto Child = Sequence.child(c); - if (isl_schedule_node_get_type(Child.keep()) != isl_schedule_node_filter) + if (isl_schedule_node_get_type(Child.get()) != isl_schedule_node_filter) return false; - if (isl_schedule_node_get_type(Child.child(0).keep()) != + if (isl_schedule_node_get_type(Child.child(0).get()) != isl_schedule_node_leaf) return false; } @@ -1253,15 +1253,14 @@ static isl::schedule_node markLoopVectorizerDisabled(isl::schedule_node Node) { /// @return The modified schedule node. static isl::schedule_node getBandNodeWithOriginDimOrder(isl::schedule_node Node) { - assert(isl_schedule_node_get_type(Node.keep()) == isl_schedule_node_band); - if (isl_schedule_node_get_type(Node.child(0).keep()) != - isl_schedule_node_leaf) + assert(isl_schedule_node_get_type(Node.get()) == isl_schedule_node_band); + if (isl_schedule_node_get_type(Node.child(0).get()) != isl_schedule_node_leaf) return Node; auto Domain = Node.get_universe_domain(); - assert(isl_union_set_n_set(Domain.keep()) == 1); + assert(isl_union_set_n_set(Domain.get()) == 1); if (Node.get_schedule_depth() != 0 || (isl::set(Domain).dim(isl::dim::set) != - isl_schedule_node_band_n_member(Node.keep()))) + isl_schedule_node_band_n_member(Node.get()))) return Node; Node = isl::manage(isl_schedule_node_delete(Node.copy())); auto PartialSchedulePwAff = Domain.identity_union_pw_multi_aff(); |