[ScopInfo] Make simplifySCoP() public. NFC.
authorMichael Kruse <llvm@meinersbur.de>
Tue, 4 Oct 2016 14:14:33 +0000 (14:14 +0000)
committerMichael Kruse <llvm@meinersbur.de>
Tue, 4 Oct 2016 14:14:33 +0000 (14:14 +0000)
This function may need to be called after the scop construction. The upcoming
DeLICM will use this to cleanup statement that all write accesses have been
removed from.

llvm-svn: 283221

polly/include/polly/ScopInfo.h

index d584e26..5ff5683 100644 (file)
@@ -1752,9 +1752,6 @@ private:
   /// Add parameter constraints to @p C that imply a non-empty domain.
   __isl_give isl_set *addNonEmptyDomainConstraints(__isl_take isl_set *C) const;
 
-  /// Simplify the SCoP representation
-  void simplifySCoP(bool AfterHoisting);
-
   /// Return the access for the base ptr of @p MA if any.
   MemoryAccess *lookupBasePtrAccess(MemoryAccess *MA);
 
@@ -2443,6 +2440,13 @@ public:
   ///
   /// @return true if @p Schedule contains extension nodes.
   static bool containsExtensionNode(__isl_keep isl_schedule *Schedule);
+
+  /// Simplify the SCoP representation.
+  ///
+  /// @param AfterHoisting Whether it is called after invariant load hoisting.
+  ///                      When true, also removes statements without
+  ///                      side-effects.
+  void simplifySCoP(bool AfterHoisting);
 };
 
 /// Print Scop scop to raw_ostream O.