CGRAOmp  0.1
Classes | Namespaces | Macros | Typedefs | Enumerations
VerifyPass.hpp File Reference
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/iterator_range.h"
#include "llvm/Analysis/LoopAnalysisManager.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/OptimizationRemarkEmitter.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
#include "llvm/IR/DiagnosticInfo.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/PassManager.h"
#include "llvm/Passes/PassBuilder.h"
#include "llvm/Passes/PassPlugin.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "CGRAOmpPass.hpp"
#include "DecoupledAnalysis.hpp"
#include "CGRAModel.hpp"
#include <map>

Go to the source code of this file.

Classes

class  CGRAOmp::VerifyResultBase
 An abstract class for the verification information. More...
 
class  CGRAOmp::LoopVerifyResult
 A derived class from VerifyResultBase bundling detailed results for each verification type. More...
 
class  CGRAOmp::VerifyResult
 A derived class from VerifyResultBase bunding all kernel verification result. More...
 
class  CGRAOmp::SimpleVerifyResult< Kind >
 Simple verification result only with a verification message. More...
 
class  CGRAOmp::VerifyPassBase< DerivedT >
 a template for verification pass More...
 
class  CGRAOmp::TimeMultiplexedVerifyPass
 A function pass to verify the kernel for TimeMultiplexed CGRA. More...
 
class  CGRAOmp::DecoupledVerifyPass
 A function pass to verify the kernel for Decoupled CGRA. More...
 
class  CGRAOmp::InstAvailability
 
class  CGRAOmp::VerifyInstAvailabilityPass< VerifyPassTy >
 A template class for verify the instruction availability It is possible to customize the routine with specilization. More...
 
class  CGRAOmp::VerifyModulePass
 A module pass to verify all annotated functions. More...
 

Namespaces

 CGRAOmp
 

Macros

#define DEBUG_TYPE   "cgraomp"
 

Typedefs

using CGRAOmp::DecoupleAnalysisResult = SimpleVerifyResult< VerificationKind::Decoupling >
 
using CGRAOmp::InterLoopDependencyAnalysisResult = SimpleVerifyResult< VerificationKind::InterLoopDep >
 

Enumerations

enum  CGRAOmp::VerificationKind {
  CGRAOmp::VerificationKind::FunctionSummary, CGRAOmp::VerificationKind::KernelSummary, CGRAOmp::VerificationKind::Decoupling, CGRAOmp::VerificationKind::InstAvailability,
  CGRAOmp::VerificationKind::MaxNestedLevel, CGRAOmp::VerificationKind::MemoryAccess, CGRAOmp::VerificationKind::InterLoopDep, CGRAOmp::VerificationKind::NestedPerfectly,
  CGRAOmp::VerificationKind::IterationSize, CGRAOmp::VerificationKind::Conditional, CGRAOmp::VerificationKind::FunctionCall
}
 Kind of verification. More...
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "cgraomp"