#include "polly/Support/ScopHelper.h"
#include "polly/Options.h"
#include "polly/ScopInfo.h"
#include "polly/Support/SCEVValidator.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/RegionInfo.h"
#include "llvm/Analysis/ScalarEvolution.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Utils/LoopUtils.h"
#include "llvm/Transforms/Utils/ScalarEvolutionExpander.h"
#include <optional>
Go to the source code of this file.
|
static cl::list< std::string > | DebugFunctions ("polly-debug-func", cl::desc("Allow calls to the specified functions in SCoPs even if their " "side-effects are unknown. This can be used to do debug output in " "Polly-transformed code."), cl::Hidden, cl::CommaSeparated, cl::cat(PollyCategory)) |
static void | simplifyRegionEntry (Region *R, DominatorTree *DT, LoopInfo *LI, RegionInfo *RI) |
static void | simplifyRegionExit (Region *R, DominatorTree *DT, LoopInfo *LI, RegionInfo *RI) |
static BasicBlock * | splitBlock (BasicBlock *Old, BasicBlock::iterator SplitPt, DominatorTree *DT, llvm::LoopInfo *LI, RegionInfo *RI) |
static bool | hasVariantIndex (GetElementPtrInst *Gep, Loop *L, Region &R, ScalarEvolution &SE) |
static bool | hasDebugCall (BasicBlock *BB) |
static MDNode * | findNamedMetadataNode (MDNode *LoopMD, StringRef Name) |
| Find a property in a LoopID.
|
static std::optional< const MDOperand * > | findNamedMetadataArg (MDNode *LoopID, StringRef Name) |
static std::optional< bool > | getOptionalBoolLoopAttribute (MDNode *LoopID, StringRef Name) |
◆ DEBUG_TYPE
#define DEBUG_TYPE "polly-scop-helper" |
◆ DebugFunctions()
cl::list< std::string > DebugFunctions |
( |
"polly-debug-func" | , |
|
|
cl::desc("Allow calls to the specified functions in SCoPs even if their " "side-effects are unknown. This can be used to do debug output in " "Polly-transformed code.") | , |
|
|
cl::Hidden | , |
|
|
cl::CommaSeparated | , |
|
|
cl::cat(PollyCategory) | ) |
|
static |
◆ findNamedMetadataArg()
std::optional< const MDOperand * > findNamedMetadataArg |
( |
MDNode * | LoopID, |
|
|
StringRef | Name ) |
|
static |
◆ findNamedMetadataNode()
MDNode * findNamedMetadataNode |
( |
MDNode * | LoopMD, |
|
|
StringRef | Name ) |
|
static |
◆ getOptionalBoolLoopAttribute()
std::optional< bool > getOptionalBoolLoopAttribute |
( |
MDNode * | LoopID, |
|
|
StringRef | Name ) |
|
static |
◆ hasDebugCall()
bool hasDebugCall |
( |
BasicBlock * | BB | ) |
|
|
static |
◆ hasVariantIndex()
bool hasVariantIndex |
( |
GetElementPtrInst * | Gep, |
|
|
Loop * | L, |
|
|
Region & | R, |
|
|
ScalarEvolution & | SE ) |
|
static |
◆ simplifyRegionEntry()
void simplifyRegionEntry |
( |
Region * | R, |
|
|
DominatorTree * | DT, |
|
|
LoopInfo * | LI, |
|
|
RegionInfo * | RI ) |
|
static |
◆ simplifyRegionExit()
void simplifyRegionExit |
( |
Region * | R, |
|
|
DominatorTree * | DT, |
|
|
LoopInfo * | LI, |
|
|
RegionInfo * | RI ) |
|
static |
◆ splitBlock()
BasicBlock * splitBlock |
( |
BasicBlock * | Old, |
|
|
BasicBlock::iterator | SplitPt, |
|
|
DominatorTree * | DT, |
|
|
llvm::LoopInfo * | LI, |
|
|
RegionInfo * | RI ) |
|
static |