[polly] r233570 - Drop libpluto support

Tobias Grosser tobias at grosser.es
Mon Mar 30 10:54:02 PDT 2015


Author: grosser
Date: Mon Mar 30 12:54:01 2015
New Revision: 233570

URL: http://llvm.org/viewvc/llvm-project?rev=233570&view=rev
Log:
Drop libpluto support

We do not have buildbots or anything that tests this functionality, hence it
most likely bitrots. People interested to use this functionality can always
recover it from svn history.

Removed:
    polly/trunk/cmake/FindPluto.cmake
    polly/trunk/lib/Transform/Pluto.cpp
Modified:
    polly/trunk/CMakeLists.txt
    polly/trunk/Makefile.config.in
    polly/trunk/autoconf/configure.ac
    polly/trunk/configure
    polly/trunk/include/polly/Config/config.h.cmake
    polly/trunk/include/polly/Config/config.h.in
    polly/trunk/include/polly/LinkAllPasses.h
    polly/trunk/lib/CMakeLists.txt
    polly/trunk/lib/Makefile
    polly/trunk/lib/Support/RegisterPasses.cpp
    polly/trunk/www/changelog.html

Modified: polly/trunk/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/CMakeLists.txt?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/CMakeLists.txt (original)
+++ polly/trunk/CMakeLists.txt Mon Mar 30 12:54:01 2015
@@ -97,11 +97,6 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PAT
 
 SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
 
-FIND_PACKAGE(Pluto)
-if(PLUTO_FOUND)
-  set(POLLY_LINK_LIBS ${POLLY_LINK_LIBS} ${PLUTO_LIBRARY})
-endif(PLUTO_FOUND)
-
 option(POLLY_ENABLE_GPGPU_CODEGEN "Enable GPGPU code generation feature" OFF)
 if (POLLY_ENABLE_GPGPU_CODEGEN)
   # Do not require CUDA, as GPU code generation test cases can be run without
@@ -110,9 +105,6 @@ if (POLLY_ENABLE_GPGPU_CODEGEN)
   set(GPU_CODEGEN TRUE)
 endif(POLLY_ENABLE_GPGPU_CODEGEN)
 
-if (PLUTO_FOUND)
-  INCLUDE_DIRECTORIES( ${PLUTO_INCLUDE_DIR} )
-endif(PLUTO_FOUND)
 INCLUDE_DIRECTORIES( ${ISL_INCLUDE_DIR} )
 if (GMP_FOUND)
   INCLUDE_DIRECTORIES( ${GMP_INCLUDE_DIR} )

Modified: polly/trunk/Makefile.config.in
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/Makefile.config.in?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/Makefile.config.in (original)
+++ polly/trunk/Makefile.config.in Mon Mar 30 12:54:01 2015
@@ -42,16 +42,15 @@ POLLY_CXXFLAGS += "-fno-rtti -fno-except
 POLLY_CFLAGS := -fvisibility=hidden
 POLLY_CFLAGS += -w
 
-PLUTO_FOUND := @pluto_found@
 CUDALIB_FOUND := @cuda_found@
 
 # Set include directories
 POLLY_INC :=  @cuda_inc@ \
-              @pluto_inc@ -I$(POLLY_SRC_ROOT)/lib/JSON/include \
+              -I$(POLLY_SRC_ROOT)/lib/JSON/include \
               -I$(POLLY_SRC_ROOT)/lib/External/isl/include \
               -I$(POLLY_SRC_ROOT)/lib/External/isl/imath \
               -I$(POLLY_SRC_ROOT)/lib/External/isl
 
-POLLY_LD := @cuda_ld@ @pluto_ld@
+POLLY_LD := @cuda_ld@
 
-POLLY_LIB := @cuda_lib@ @pluto_lib@
+POLLY_LIB := @cuda_lib@

Modified: polly/trunk/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/autoconf/configure.ac?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/autoconf/configure.ac (original)
+++ polly/trunk/autoconf/configure.ac Mon Mar 30 12:54:01 2015
@@ -73,14 +73,6 @@ dnl ************************************
 dnl * Set the location of various third-party software packages
 dnl **************************************************************************
 
-dnl Check that we have libpluto.
-saved_CXXFLAGS=$CXXFLAGS
-CXXFLAGS="$CXXFLAGS"
-find_lib_and_headers([pluto], [pluto/libpluto.h], [pluto])
-CXXFLAGS=$saved_CXXFLAGS
-AS_IF([test "x$pluto_found" = "xyes"],
-  [AC_DEFINE([PLUTO_FOUND],[1],[Define if pluto found])])
-
 dnl Check if CUDA lib there
 dnl Disable the build of polly, even if it is checked out into tools/polly.
 AC_ARG_ENABLE(polly_gpu_codegen,

Removed: polly/trunk/cmake/FindPluto.cmake
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/cmake/FindPluto.cmake?rev=233569&view=auto
==============================================================================
--- polly/trunk/cmake/FindPluto.cmake (original)
+++ polly/trunk/cmake/FindPluto.cmake (removed)
@@ -1,19 +0,0 @@
-FIND_PATH(PLUTO_INCLUDE_DIR pluto/libpluto.h)
-
-FIND_LIBRARY(PLUTO_LIBRARY NAMES pluto)
-
-IF (PLUTO_INCLUDE_DIR AND PLUTO_LIBRARY)
-  SET(PLUTO_FOUND TRUE)
-ENDIF (PLUTO_INCLUDE_DIR AND PLUTO_LIBRARY)
-
-
-IF (PLUTO_FOUND)
-  IF (NOT PLUTO_FIND_QUIETLY)
-    MESSAGE(STATUS "Found Pluto: ${PLUTO_LIBRARY}")
-  ENDIF (NOT PLUTO_FIND_QUIETLY)
-ELSE (PLUTO_FOUND)
-  IF (PLUTO_FIND_REQUIRED)
-    MESSAGE(FATAL_ERROR "Could not find Pluto")
-  ENDIF (PLUTO_FIND_REQUIRED)
-ENDIF (PLUTO_FOUND)
-

Modified: polly/trunk/configure
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/configure?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/configure (original)
+++ polly/trunk/configure Mon Mar 30 12:54:01 2015
@@ -591,10 +591,6 @@ cuda_ld
 cuda_lib
 cuda_inc
 cuda_found
-pluto_ld
-pluto_lib
-pluto_inc
-pluto_found
 OBJEXT
 EXEEXT
 ac_ct_CXX
@@ -647,7 +643,6 @@ ac_user_opts='
 enable_option_checking
 with_llvmsrc
 with_llvmobj
-with_pluto
 enable_polly_gpu_codegen
 with_cuda
 '
@@ -1277,7 +1272,6 @@ Optional Packages:
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
   --with-llvmsrc          Location of LLVM Source Code
   --with-llvmobj          Location of LLVM Object Code
-  --with-pluto            prefix of pluto
   --with-cuda             prefix of cuda
 
 Some influential environment variables:
@@ -1887,8 +1881,22 @@ fi
 
 
 
-saved_CXXFLAGS=$CXXFLAGS
-CXXFLAGS="$CXXFLAGS"
+# Check whether --enable-polly_gpu_codegen was given.
+if test "${enable_polly_gpu_codegen+set}" = set; then :
+  enableval=$enable_polly_gpu_codegen;
+else
+  enableval=default
+fi
+
+case "$enableval" in
+  yes)
+$as_echo "#define GPU_CODEGEN 1" >>confdefs.h
+ ;;
+  no) ;;
+  default) ;;
+  *) as_fn_error $? "Invalid setting for --enable-polly-gpu-codegen. Use \"yes\" or \"no\"" "$LINENO" 5 ;;
+esac
+
 ac_ext=cpp
 ac_cpp='$CXXCPP $CPPFLAGS'
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2399,108 +2407,6 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 
 
   ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-  OLD_CXXFLAGS=$CXXFLAGS;
-  OLD_LDFLAGS=$LDFLAGS;
-  OLD_LIBS=$LIBS;
-
-  LIBS="$LIBS -lpluto";
-
-  # Get include path and lib path
-
-# Check whether --with-pluto was given.
-if test "${with_pluto+set}" = set; then :
-  withval=$with_pluto; given_inc_path="$withval/include"; CXXFLAGS="-I$given_inc_path $CXXFLAGS";
-       given_lib_path="$withval/lib"; LDFLAGS="-L$given_lib_path $LDFLAGS"
-else
-  given_inc_path=inc_not_give_pluto;
-       given_lib_path=lib_not_give_pluto
-
-fi
-
-  # Check for library and headers works
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pluto: pluto/libpluto.h in $given_inc_path, and libpluto in $given_lib_path" >&5
-$as_echo_n "checking for pluto: pluto/libpluto.h in $given_inc_path, and libpluto in $given_lib_path... " >&6; }
-
-  # try to compile a file that includes a header of the library
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <pluto/libpluto.h>
-int
-main ()
-{
-;
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-    pluto_found="yes"
-
-    if test "x$given_inc_path" != "xinc_not_give_pluto"; then :
-  pluto_inc="-I$given_inc_path"
-
-fi
-    pluto_lib="-lpluto"
-
-    if test "x$given_lib_path" != "xlib_not_give_pluto"; then :
-  pluto_ld="-L$given_lib_path"
-
-fi
-else
-  if test "x" = "xrequired"; then :
-  as_fn_error $? "pluto required but not found" "$LINENO" 5
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-fi
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-
-  # reset original CXXFLAGS
-  CXXFLAGS=$OLD_CXXFLAGS
-  LDFLAGS=$OLD_LDFLAGS;
-  LIBS=$OLD_LIBS
-  ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-CXXFLAGS=$saved_CXXFLAGS
-if test "x$pluto_found" = "xyes"; then :
-
-$as_echo "#define PLUTO_FOUND 1" >>confdefs.h
-
-fi
-
-# Check whether --enable-polly_gpu_codegen was given.
-if test "${enable_polly_gpu_codegen+set}" = set; then :
-  enableval=$enable_polly_gpu_codegen;
-else
-  enableval=default
-fi
-
-case "$enableval" in
-  yes)
-$as_echo "#define GPU_CODEGEN 1" >>confdefs.h
- ;;
-  no) ;;
-  default) ;;
-  *) as_fn_error $? "Invalid setting for --enable-polly-gpu-codegen. Use \"yes\" or \"no\"" "$LINENO" 5 ;;
-esac
-
-
-  ac_ext=cpp
 ac_cpp='$CXXCPP $CPPFLAGS'
 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'

Modified: polly/trunk/include/polly/Config/config.h.cmake
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/include/polly/Config/config.h.cmake?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/include/polly/Config/config.h.cmake (original)
+++ polly/trunk/include/polly/Config/config.h.cmake Mon Mar 30 12:54:01 2015
@@ -14,7 +14,6 @@
 #define POLLY_CONFIG_H
 
 #cmakedefine CLOOG_FOUND
-#cmakedefine PLUTO_FOUND
 #cmakedefine SCOPLIB_FOUND
 #cmakedefine CUDALIB_FOUND
 #cmakedefine GPU_CODEGEN

Modified: polly/trunk/include/polly/Config/config.h.in
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/include/polly/Config/config.h.in?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/include/polly/Config/config.h.in (original)
+++ polly/trunk/include/polly/Config/config.h.in Mon Mar 30 12:54:01 2015
@@ -23,6 +23,3 @@
 
 /* Define to the version of this package. */
 #undef PACKAGE_VERSION
-
-/* Define if pluto found */
-#undef PLUTO_FOUND

Modified: polly/trunk/include/polly/LinkAllPasses.h
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/include/polly/LinkAllPasses.h?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/include/polly/LinkAllPasses.h (original)
+++ polly/trunk/include/polly/LinkAllPasses.h Mon Mar 30 12:54:01 2015
@@ -36,9 +36,6 @@ llvm::Pass *createDOTViewerPass();
 llvm::Pass *createIndependentBlocksPass();
 llvm::Pass *createJSONExporterPass();
 llvm::Pass *createJSONImporterPass();
-#ifdef PLUTO_FOUND
-llvm::Pass *createPlutoOptimizerPass();
-#endif
 llvm::Pass *createPollyCanonicalizePass();
 llvm::Pass *createScopDetectionPass();
 llvm::Pass *createScopInfoPass();
@@ -73,9 +70,6 @@ struct PollyForcePassLinking {
     polly::createJSONImporterPass();
     polly::createScopDetectionPass();
     polly::createScopInfoPass();
-#ifdef PLUTO_FOUND
-    polly::createPlutoOptimizerPass();
-#endif
     polly::createPollyCanonicalizePass();
     polly::createIslAstInfoPass();
     polly::createIslCodeGenerationPass();
@@ -95,9 +89,6 @@ void initializeJSONImporterPass(llvm::Pa
 void initializeIslAstInfoPass(llvm::PassRegistry &);
 void initializeIslCodeGenerationPass(llvm::PassRegistry &);
 void initializeIslScheduleOptimizerPass(llvm::PassRegistry &);
-#ifdef PLUTO_FOUND
-void initializePlutoOptimizerPass(llvm::PassRegistry &);
-#endif
 void initializePollyCanonicalizePass(llvm::PassRegistry &);
 }
 

Modified: polly/trunk/lib/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/CMakeLists.txt?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/lib/CMakeLists.txt (original)
+++ polly/trunk/lib/CMakeLists.txt Mon Mar 30 12:54:01 2015
@@ -1,9 +1,5 @@
 set(LLVM_NO_RTTI 1)
 
-if (PLUTO_FOUND)
-  set(POLLY_PLUTO_FILES Transform/Pluto.cpp)
-endif (PLUTO_FOUND)
-
 set(POLLY_JSON_FILES
     JSON/json_reader.cpp
     JSON/json_value.cpp
@@ -129,7 +125,6 @@ add_polly_library(Polly
   Transform/DeadCodeElimination.cpp
   Transform/IndependentBlocks.cpp
   Transform/ScheduleOptimizer.cpp
-  ${POLLY_PLUTO_FILES}
   ${ISL_FILES}
   )
 

Modified: polly/trunk/lib/Makefile
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/Makefile?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/lib/Makefile (original)
+++ polly/trunk/lib/Makefile Mon Mar 30 12:54:01 2015
@@ -21,10 +21,6 @@ ifeq ($(GPU_CODEGEN), yes)
 GPGPU_CODEGEN_FILES= CodeGen/PTXGenerator.cpp
 endif
 
-ifeq ($(PLUTO_FOUND), yes)
-POLLY_PLUTO_FILES= Transform/Pluto.cpp
-endif
-
 ISL_CODEGEN_FILES= CodeGen/IslAst.cpp \
                    CodeGen/IslExprBuilder.cpp \
                    CodeGen/IslCodeGeneration.cpp
@@ -140,7 +136,6 @@ SOURCES= Polly.cpp \
 	 ${GPGPU_FILES} \
 	 ${ISL_CODEGEN_FILES} \
 	 ${POLLY_JSON_FILES} \
-	 ${POLLY_PLUTO_FILES} \
 	 ${ISL_FILES}
 
 #

Modified: polly/trunk/lib/Support/RegisterPasses.cpp
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/Support/RegisterPasses.cpp?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/lib/Support/RegisterPasses.cpp (original)
+++ polly/trunk/lib/Support/RegisterPasses.cpp Mon Mar 30 12:54:01 2015
@@ -49,21 +49,11 @@ static cl::opt<bool> PollyDetectOnly(
     cl::desc("Only run scop detection, but no other optimizations"),
     cl::init(false), cl::ZeroOrMore, cl::cat(PollyCategory));
 
-enum OptimizerChoice {
-  OPTIMIZER_NONE,
-#ifdef PLUTO_FOUND
-  OPTIMIZER_PLUTO,
-#endif
-  OPTIMIZER_ISL
-};
+enum OptimizerChoice { OPTIMIZER_NONE, OPTIMIZER_ISL };
 
 static cl::opt<OptimizerChoice> Optimizer(
     "polly-optimizer", cl::desc("Select the scheduling optimizer"),
     cl::values(clEnumValN(OPTIMIZER_NONE, "none", "No optimizer"),
-#ifdef PLUTO_FOUND
-               clEnumValN(OPTIMIZER_PLUTO, "pluto",
-                          "The Pluto scheduling optimizer"),
-#endif
                clEnumValN(OPTIMIZER_ISL, "isl", "The isl scheduling optimizer"),
                clEnumValEnd),
     cl::Hidden, cl::init(OPTIMIZER_ISL), cl::ZeroOrMore,
@@ -177,10 +167,8 @@ void initializePollyPasses(PassRegistry
 ///
 /// For certain parts of the Polly optimizer, several alternatives are provided:
 ///
-/// As scheduling optimizer we support PLUTO
-/// (http://pluto-compiler.sourceforge.net) as well as the isl scheduling
-/// optimizer (http://freecode.com/projects/isl). The isl optimizer is the
-/// default optimizer.
+/// As scheduling optimizer we support the isl scheduling optimizer
+/// (http://freecode.com/projects/isl).
 /// It is also possible to run Polly with no optimizer. This mode is mainly
 /// provided to analyze the run and compile time changes caused by the
 /// scheduling optimizer.
@@ -215,12 +203,6 @@ void registerPollyPasses(llvm::legacy::P
   case OPTIMIZER_NONE:
     break; /* Do nothing */
 
-#ifdef PLUTO_FOUND
-  case OPTIMIZER_PLUTO:
-    PM.add(polly::createPlutoOptimizerPass());
-    break;
-#endif
-
   case OPTIMIZER_ISL:
     PM.add(polly::createIslScheduleOptimizerPass());
     break;

Removed: polly/trunk/lib/Transform/Pluto.cpp
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/Transform/Pluto.cpp?rev=233569&view=auto
==============================================================================
--- polly/trunk/lib/Transform/Pluto.cpp (original)
+++ polly/trunk/lib/Transform/Pluto.cpp (removed)
@@ -1,270 +0,0 @@
-//===- Pluto.cpp - Calculate an optimized schedule ---------------------===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// Use libpluto to optimize the schedule.
-//
-//===----------------------------------------------------------------------===//
-
-#include "polly/Config/config.h"
-
-#ifdef PLUTO_FOUND
-#include "polly/CodeGen/CodeGeneration.h"
-#include "polly/DependenceInfo.h"
-#include "polly/LinkAllPasses.h"
-#include "polly/Options.h"
-#include "polly/ScopInfo.h"
-#include "polly/Support/GICHelper.h"
-#include "llvm/Support/Debug.h"
-
-#include "pluto/libpluto.h"
-#include "isl/map.h"
-
-using namespace llvm;
-using namespace polly;
-
-#define DEBUG_TYPE "polly-opt-pluto"
-
-static cl::opt<bool> EnableTiling("polly-pluto-tile", cl::desc("Enable tiling"),
-                                  cl::Hidden, cl::init(false), cl::ZeroOrMore,
-                                  cl::cat(PollyCategory));
-
-static cl::opt<bool> EnableIntraTiling("polly-pluto-intratileopt",
-                                       cl::desc("Enable intratiling"),
-                                       cl::Hidden, cl::init(true),
-                                       cl::ZeroOrMore, cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoDebug("polly-pluto-debug",
-                                cl::desc("Enable pluto debug"), cl::Hidden,
-                                cl::init(false), cl::ZeroOrMore,
-                                cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoMoreDebug("polly-pluto-moredebug",
-                                    cl::desc("Enable more pluto debugging"),
-                                    cl::Hidden, cl::init(false), cl::ZeroOrMore,
-                                    cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoParallel("polly-pluto-parallel",
-                                   cl::desc("Enable pluto parallel transforms"),
-                                   cl::Hidden, cl::init(false), cl::ZeroOrMore,
-                                   cl::cat(PollyCategory));
-
-static cl::opt<bool>
-    PlutoInnerParallel("polly-pluto-innerpara",
-                       cl::desc("Enable inner parallelism instead of piped."),
-                       cl::Hidden, cl::init(false), cl::ZeroOrMore,
-                       cl::cat(PollyCategory));
-
-static cl::opt<bool>
-    PlutoIdentity("polly-pluto-identity",
-                  cl::desc("Enable pluto identity transformation"), cl::Hidden,
-                  cl::init(false), cl::ZeroOrMore, cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoUnroll("polly-pluto-unroll",
-                                 cl::desc("Enable pluto unrolling"), cl::Hidden,
-                                 cl::init(false), cl::ZeroOrMore,
-                                 cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoRar("polly-pluto-rar",
-                              cl::desc("Enable pluto rar deps"), cl::Hidden,
-                              cl::init(false), cl::ZeroOrMore,
-                              cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoParaPipe("polly-pluto-multipipe",
-                                   cl::desc("Enable multipipe parallelism"),
-                                   cl::Hidden, cl::init(false), cl::ZeroOrMore,
-                                   cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoL2Tile("polly-pluto-l2tile",
-                                 cl::desc("Enable L2 tiling"), cl::Hidden,
-                                 cl::init(false), cl::ZeroOrMore,
-                                 cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoPollyUnroll("polly-pluto-pollyunroll",
-                                      cl::desc("Enable pluto polly unrolling"),
-                                      cl::Hidden, cl::init(false),
-                                      cl::ZeroOrMore, cl::cat(PollyCategory));
-
-static cl::opt<bool>
-    PlutoIslDep("polly-pluto-isldep",
-                cl::desc("Enable pluto isl dependency scanning"), cl::Hidden,
-                cl::init(false), cl::ZeroOrMore, cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoIslDepCompact(
-    "polly-pluto-isldepcom", cl::desc("Enable pluto isl dependency compaction"),
-    cl::Hidden, cl::init(false), cl::ZeroOrMore, cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoIslSolve("polly-pluto-islsolve",
-                                   cl::desc("Enable pluto isl solver"),
-                                   cl::Hidden, cl::init(false), cl::ZeroOrMore,
-                                   cl::cat(PollyCategory));
-
-static cl::opt<bool> PlutoLastWriter("polly-pluto-lastwriter",
-                                     cl::desc("Enable pluto lastwriter"),
-                                     cl::Hidden, cl::init(false),
-                                     cl::ZeroOrMore, cl::cat(PollyCategory));
-
-namespace {
-/// Convert an int into a string.
-static std::string convertInt(int number) {
-  if (number == 0)
-    return "0";
-  std::string temp = "";
-  std::string returnvalue = "";
-  while (number > 0) {
-    temp += number % 10 + 48;
-    number /= 10;
-  }
-  for (unsigned i = 0; i < temp.length(); i++)
-    returnvalue += temp[temp.length() - i - 1];
-  return returnvalue;
-}
-
-class PlutoOptimizer : public ScopPass {
-public:
-  static char ID;
-  explicit PlutoOptimizer() : ScopPass(ID) {}
-
-  virtual bool runOnScop(Scop &S);
-  void printScop(llvm::raw_ostream &OS, Scop &S) const;
-  void getAnalysisUsage(AnalysisUsage &AU) const;
-  static void extendScattering(Scop &S, unsigned NewDimensions);
-};
-}
-
-char PlutoOptimizer::ID = 0;
-
-static int getSingleMap(__isl_take isl_map *map, void *user) {
-  isl_map **singleMap = (isl_map **)user;
-  *singleMap = map;
-
-  return 0;
-}
-
-void PlutoOptimizer::extendScattering(Scop &S, unsigned NewDimensions) {
-  for (ScopStmt *Stmt : S) {
-    unsigned OldDimensions = Stmt->getNumScattering();
-    isl_space *Space;
-    isl_map *Map, *New;
-
-    Space = isl_space_alloc(Stmt->getIslCtx(), 0, OldDimensions, NewDimensions);
-    Map = isl_map_universe(Space);
-
-    for (unsigned i = 0; i < OldDimensions; i++)
-      Map = isl_map_equate(Map, isl_dim_in, i, isl_dim_out, i);
-
-    for (unsigned i = OldDimensions; i < NewDimensions; i++)
-      Map = isl_map_fix_si(Map, isl_dim_out, i, 0);
-
-    Map = isl_map_align_params(Map, S.getParamSpace());
-    New = isl_map_apply_range(Stmt->getScattering(), Map);
-    Stmt->setScattering(New);
-  }
-}
-
-bool PlutoOptimizer::runOnScop(Scop &S) {
-  isl_union_set *Domain;
-  isl_union_map *Deps, *ToPlutoNames, *Schedule;
-  PlutoOptions *Options;
-
-  DependenceInfo *D = &getAnalysis<DependenceInfo>();
-
-  int DependencesKinds = DependenceInfo::TYPE_RAW | DependenceInfo::TYPE_WAR |
-                         DependenceInfo::TYPE_WAW;
-
-  Deps = D->getDependences(DependencesKinds);
-  Domain = S.getDomains();
-  ToPlutoNames = isl_union_map_empty(S.getParamSpace());
-
-  int counter = 0;
-  for (ScopStmt *Stmt : S) {
-    std::string Name = "S_" + convertInt(counter);
-    isl_map *Identity = isl_map_identity(isl_space_map_from_domain_and_range(
-        Stmt->getDomainSpace(), Stmt->getDomainSpace()));
-    Identity = isl_map_set_tuple_name(Identity, isl_dim_out, Name.c_str());
-    ToPlutoNames = isl_union_map_add_map(ToPlutoNames, Identity);
-    counter++;
-  }
-
-  Deps = isl_union_map_apply_domain(Deps, isl_union_map_copy(ToPlutoNames));
-  Deps = isl_union_map_apply_range(Deps, isl_union_map_copy(ToPlutoNames));
-  Domain = isl_union_set_apply(Domain, isl_union_map_copy(ToPlutoNames));
-
-  Options = pluto_options_alloc();
-  Options->debug = PlutoDebug;
-  Options->fuse = 2;
-  Options->identity = PlutoIdentity;
-  Options->innerpar = PlutoInnerParallel;
-  Options->intratileopt = EnableIntraTiling;
-  Options->isldep = PlutoIslDep;
-  Options->isldepcompact = PlutoIslDepCompact;
-  Options->islsolve = PlutoIslSolve;
-  Options->l2tile = PlutoL2Tile;
-  Options->lastwriter = PlutoLastWriter;
-  Options->moredebug = PlutoMoreDebug;
-  Options->multipipe = PlutoParaPipe;
-  Options->parallel = PlutoParallel;
-  Options->polyunroll = PlutoPollyUnroll;
-  Options->rar = PlutoRar;
-  Options->tile = EnableTiling;
-  Options->unroll = PlutoUnroll;
-
-  DEBUG(dbgs() << "Domain: " << stringFromIslObj(Domain) << "\n";
-        dbgs() << "Dependences: " << stringFromIslObj(Deps) << "\n";);
-  Schedule = pluto_schedule(Domain, Deps, Options);
-  pluto_options_free(Options);
-
-  isl_union_set_free(Domain);
-  isl_union_map_free(Deps);
-
-  if (!Schedule)
-    return false;
-
-  Schedule =
-      isl_union_map_apply_domain(Schedule, isl_union_map_reverse(ToPlutoNames));
-
-  for (ScopStmt *Stmt : S) {
-    isl_set *Domain = Stmt->getDomain();
-    isl_union_map *StmtBand;
-    StmtBand = isl_union_map_intersect_domain(isl_union_map_copy(Schedule),
-                                              isl_union_set_from_set(Domain));
-    isl_map *StmtSchedule;
-    isl_union_map_foreach_map(StmtBand, getSingleMap, &StmtSchedule);
-    Stmt->setScattering(StmtSchedule);
-    isl_union_map_free(StmtBand);
-  }
-
-  isl_union_map_free(Schedule);
-
-  unsigned MaxScatDims = 0;
-
-  for (ScopStmt *Stmt : S)
-    MaxScatDims = std::max(Stmt->getNumScattering(), MaxScatDims);
-
-  extendScattering(S, MaxScatDims);
-  return false;
-}
-
-void PlutoOptimizer::printScop(raw_ostream &, Scop &) const {}
-
-void PlutoOptimizer::getAnalysisUsage(AnalysisUsage &AU) const {
-  ScopPass::getAnalysisUsage(AU);
-  AU.addRequired<DependenceInfo>();
-}
-
-Pass *polly::createPlutoOptimizerPass() { return new PlutoOptimizer(); }
-
-INITIALIZE_PASS_BEGIN(PlutoOptimizer, "polly-opt-pluto",
-                      "Polly - Optimize schedule of SCoP (Pluto)", false,
-                      false);
-INITIALIZE_PASS_DEPENDENCY(DependenceInfo);
-INITIALIZE_PASS_DEPENDENCY(ScopInfo);
-INITIALIZE_PASS_END(PlutoOptimizer, "polly-opt-pluto",
-                    "Polly - Optimize schedule of SCoP (Pluto)", false, false)
-
-#endif // PLUTO_FOUND

Modified: polly/trunk/www/changelog.html
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/www/changelog.html?rev=233570&r1=233569&r2=233570&view=diff
==============================================================================
--- polly/trunk/www/changelog.html (original)
+++ polly/trunk/www/changelog.html Mon Mar 30 12:54:01 2015
@@ -13,7 +13,16 @@
 <div id="content">
 <h1> ChangeLog </h1>
 
-<h2> 3.6 - Upcoming release</h2>
+<h2> 3.7 </h2>
+
+<ul>
+<li>libPluto support has been removed. It has not been tested regularly and
+due to it being copyleft license it had never a chance to become a a core
+piece of Polly. Experiments with different schedulers should use the jscop
+interface.</li>
+</ul>
+
+<h2> 3.6</h2>
 
 <ul>
 <li>Switch to the new isl AST generator (replacing CLooG)</li>





More information about the llvm-commits mailing list