diff options
| author | Philip Pfaffe <philip.pfaffe@gmail.com> | 2017-11-19 22:13:34 +0000 |
|---|---|---|
| committer | Philip Pfaffe <philip.pfaffe@gmail.com> | 2017-11-19 22:13:34 +0000 |
| commit | 00fd43b327a252280db1c34696efee809c2286bc (patch) | |
| tree | 093cf147174d34b59f3ccea6abec1607f37232e5 /polly/lib/Transform/ScheduleOptimizer.cpp | |
| parent | 0f45abdef73db109bae53cd470e73982d35f8b0f (diff) | |
| download | bcm5719-llvm-00fd43b327a252280db1c34696efee809c2286bc.tar.gz bcm5719-llvm-00fd43b327a252280db1c34696efee809c2286bc.zip | |
Port ScopInfo to the isl cpp bindings
Summary:
Most changes are mechanical, but in one place I changed the program semantics
by fixing a likely bug:
In `Scop::hasFeasibleRuntimeContext()`, I'm now explicitely handling the
error-case. Before, when the call to `addNonEmptyDomainConstraints()`
returned a null set, this (probably) accidentally worked because
isl_bool_error converts to true. I'm checking for nullptr now.
Reviewers: grosser, Meinersbur, bollu
Reviewed By: Meinersbur
Subscribers: nemanjai, kbarton, pollydev, llvm-commits
Differential Revision: https://reviews.llvm.org/D39971
llvm-svn: 318632
Diffstat (limited to 'polly/lib/Transform/ScheduleOptimizer.cpp')
| -rw-r--r-- | polly/lib/Transform/ScheduleOptimizer.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/polly/lib/Transform/ScheduleOptimizer.cpp b/polly/lib/Transform/ScheduleOptimizer.cpp index 899f1c06830..3f9c4958856 100644 --- a/polly/lib/Transform/ScheduleOptimizer.cpp +++ b/polly/lib/Transform/ScheduleOptimizer.cpp @@ -1374,7 +1374,7 @@ bool ScheduleTreeOptimizer::isProfitableSchedule(Scop &S, // optimizations, by comparing (yet to be defined) performance metrics // before/after the scheduling optimizer // (e.g., #stride-one accesses) - if (S.containsExtensionNode(NewSchedule.get())) + if (S.containsExtensionNode(NewSchedule)) return true; auto NewScheduleMap = NewSchedule.get_map(); auto OldSchedule = S.getSchedule(); @@ -1582,7 +1582,7 @@ bool IslScheduleOptimizer::runOnScop(Scop &S) { IslOuterCoincidence = 0; } - isl_ctx *Ctx = S.getIslCtx(); + isl_ctx *Ctx = S.getIslCtx().get(); isl_options_set_schedule_outer_coincidence(Ctx, IslOuterCoincidence); isl_options_set_schedule_serialize_sccs(Ctx, IslSerializeSCCs); @@ -1634,7 +1634,7 @@ bool IslScheduleOptimizer::runOnScop(Scop &S) { NumAffineLoopsOptimized += ScopStats.NumAffineLoops; NumBoxedLoopsOptimized += ScopStats.NumBoxedLoops; - S.setScheduleTree(NewSchedule.release()); + S.setScheduleTree(NewSchedule); S.markAsOptimized(); if (OptimizedScops) |

