Skip to content
This repository was archived by the owner on Apr 28, 2023. It is now read-only.

Commit e1a705e

Browse files
author
Sven Verdoolaege
committed
order{Before,After}: handle mapping filter separately
This will allow a mapping filter to be considered as something different from a (subclass of a) filter.
1 parent edbda14 commit e1a705e

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

tc/core/polyhedral/schedule_transforms.cc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -736,7 +736,9 @@ namespace {
736736
void gist(ScheduleTree* tree, isl::union_set context) {
737737
if (auto bandElem = tree->elemAs<ScheduleTreeElemBand>()) {
738738
bandElem->mupa_ = bandElem->mupa_.gist(context);
739-
} else if (auto filterElem = tree->elemAsBase<ScheduleTreeElemFilter>()) {
739+
} else if (auto filterElem = tree->elemAs<ScheduleTreeElemMappingFilter>()) {
740+
filterElem->filter_ = filterElem->filter_.gist(context);
741+
} else if (auto filterElem = tree->elemAs<ScheduleTreeElemFilter>()) {
740742
filterElem->filter_ = filterElem->filter_.gist(context);
741743
if (filterElem->filter_.is_empty()) {
742744
tree->detachChildren();
@@ -748,7 +750,7 @@ void gist(ScheduleTree* tree, isl::union_set context) {
748750
if (tree->elemAs<ScheduleTreeElemSequence>()) {
749751
for (auto i = tree->numChildren(); i > 0; --i) {
750752
auto child = tree->child({i - 1});
751-
if (auto filterElem = child->elemAsBase<ScheduleTreeElemFilter>()) {
753+
if (auto filterElem = child->elemAs<ScheduleTreeElemFilter>()) {
752754
if (filterElem->filter_.is_empty()) {
753755
tree->detachChild(i - 1);
754756
}

0 commit comments

Comments
 (0)