Only have a single option to disable tiling for both isl and Pocc optimzer

This also documents the new option on the website.

llvm-svn: 142775
This commit is contained in:
Tobias Grosser 2011-10-23 20:59:44 +00:00
parent 67707b7131
commit 967239c029
4 changed files with 33 additions and 10 deletions

View File

@ -0,0 +1,19 @@
//===------ polly/ScheduleOptimizer.h - The Schedule Optimizer *- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
//===----------------------------------------------------------------------===//
#ifndef POLLY_SCEDULE_OPTIMIZER_H
#define POLLY_SCHEDULE_OPTIMZER_H
namespace polly {
extern bool DisablePollyTiling;
}
#endif

View File

@ -23,6 +23,7 @@
#include "polly/ScopInfo.h"
#include "polly/Dependences.h"
#include "polly/CodeGeneration.h"
#include "polly/ScheduleOptimizer.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/Program.h"
@ -41,11 +42,6 @@
using namespace llvm;
using namespace polly;
static cl::opt<bool>
PlutoTile("enable-pluto-tile",
cl::desc("Enable pluto tiling for polly"), cl::Hidden,
cl::value_desc("Pluto tiling enabled if true"),
cl::init(false));
static cl::opt<std::string>
PlutoFuse("pluto-fuse",
cl::desc(""), cl::Hidden,
@ -120,7 +116,7 @@ bool Pocc::runOnScop(Scop &S) {
arguments.push_back(PlutoFuse.c_str());
if (PlutoTile)
if (!DisablePollyTiling)
arguments.push_back("--pluto-tile");
if (EnablePollyVector)

View File

@ -17,9 +17,10 @@
// Design and Implementation, PLDI 08, pages 101113. ACM, 2008.
//===----------------------------------------------------------------------===//
#include "polly/ScheduleOptimizer.h"
#include "polly/Cloog.h"
#include "polly/LinkAllPasses.h"
#include "polly/CodeGeneration.h"
#include "polly/Support/GICHelper.h"
#include "polly/Dependences.h"
@ -38,10 +39,13 @@
using namespace llvm;
using namespace polly;
static cl::opt<bool>
namespace polly {
bool DisablePollyTiling;
}
static cl::opt<bool, true>
DisableTiling("polly-no-tiling",
cl::desc("Disable tiling in the isl scheduler"), cl::Hidden,
cl::init(false));
cl::desc("Disable tiling in the scheduler"), cl::Hidden,
cl::location(polly::DisablePollyTiling), cl::init(false));
namespace {

View File

@ -82,6 +82,10 @@ installed. As the new scheduler may still have some bugs and because being
able to compare is good in general, it is possible to switch the used optimizer
back to PoCC. For this add the option '-polly-use-pocc'.
<h3>Disable tiling in the optimizer</h3>
By default both optimizers perform tiling, if possible. In case this is not
wanted the option '-polly-no-tiling' can be used to disable it. (This option
works for both optimizers).
</div>
</body>
</html>