//===---------- Polly.cpp - Initialize the Polly Module -------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // //===----------------------------------------------------------------------===// #include "polly/RegisterPasses.h" #include "llvm/Transforms/IPO/PassManagerBuilder.h" namespace { /// Initialize Polly passes when library is loaded. /// /// We use the constructor of a statically declared object to initialize the /// different Polly passes right after the Polly library is loaded. This ensures /// that the Polly passes are available e.g. in the 'opt' tool. class StaticInitializer { public: StaticInitializer() { llvm::PassRegistry &Registry = *llvm::PassRegistry::getPassRegistry(); polly::initializePollyPasses(Registry); } }; static StaticInitializer InitializeEverything; } // end of anonymous namespace.