|
LLVM
8.0.1
|
#include "llvm/Transforms/Scalar/AlignmentFromAssumptions.h"#include "llvm/ADT/SmallPtrSet.h"#include "llvm/ADT/Statistic.h"#include "llvm/Analysis/AliasAnalysis.h"#include "llvm/Analysis/AssumptionCache.h"#include "llvm/Analysis/GlobalsModRef.h"#include "llvm/Analysis/LoopInfo.h"#include "llvm/Analysis/ScalarEvolutionExpressions.h"#include "llvm/Analysis/ValueTracking.h"#include "llvm/IR/Constant.h"#include "llvm/IR/Dominators.h"#include "llvm/IR/Instruction.h"#include "llvm/IR/Intrinsics.h"#include "llvm/IR/Module.h"#include "llvm/Support/Debug.h"#include "llvm/Support/raw_ostream.h"#include "llvm/Transforms/Scalar.h"
Go to the source code of this file.
Macros | |
| #define | AA_NAME "alignment-from-assumptions" |
| #define | DEBUG_TYPE AA_NAME |
Functions | |
| STATISTIC (NumLoadAlignChanged, "Number of loads changed by alignment assumptions") | |
| STATISTIC (NumStoreAlignChanged, "Number of stores changed by alignment assumptions") | |
| STATISTIC (NumMemIntAlignChanged, "Number of memory intrinsics changed by alignment assumptions") | |
| INITIALIZE_PASS_BEGIN (AlignmentFromAssumptions, AA_NAME, aip_name, false, false) INITIALIZE_PASS_END(AlignmentFromAssumptions | |
| static unsigned | getNewAlignmentDiff (const SCEV *DiffSCEV, const SCEV *AlignSCEV, ScalarEvolution *SE) |
| static unsigned | getNewAlignment (const SCEV *AASCEV, const SCEV *AlignSCEV, const SCEV *OffSCEV, Value *Ptr, ScalarEvolution *SE) |
Variables | |
| static const char | aip_name [] = "Alignment from assumptions" |
| AA_NAME | |
| false | |
| #define AA_NAME "alignment-from-assumptions" |
Definition at line 19 of file AlignmentFromAssumptions.cpp.
| #define DEBUG_TYPE AA_NAME |
Definition at line 20 of file AlignmentFromAssumptions.cpp.
|
static |
Definition at line 128 of file AlignmentFromAssumptions.cpp.
References llvm::dbgs(), llvm::ScalarEvolution::getMinusSCEV(), getNewAlignmentDiff(), llvm::ScalarEvolution::getNoopOrSignExtend(), llvm::ScalarEvolution::getSCEV(), llvm::SCEV::getType(), and LLVM_DEBUG.
Referenced by llvm::AlignmentFromAssumptionsPass::processAssumption().
|
static |
Definition at line 93 of file AlignmentFromAssumptions.cpp.
References llvm::abs(), llvm::dbgs(), llvm::ScalarEvolution::getMinusSCEV(), llvm::ScalarEvolution::getMulExpr(), llvm::ScalarEvolution::getUDivExpr(), llvm::isPowerOf2_64(), and LLVM_DEBUG.
Referenced by getNewAlignment().
| STATISTIC | ( | NumLoadAlignChanged | , |
| "Number of loads changed by alignment assumptions" | |||
| ) |
| STATISTIC | ( | NumStoreAlignChanged | , |
| "Number of stores changed by alignment assumptions" | |||
| ) |
| STATISTIC | ( | NumMemIntAlignChanged | , |
| "Number of memory intrinsics changed by alignment assumptions" | |||
| ) |
| AA_NAME |
Definition at line 80 of file AlignmentFromAssumptions.cpp.
|
static |
Definition at line 74 of file AlignmentFromAssumptions.cpp.
| false |
Definition at line 80 of file AlignmentFromAssumptions.cpp.
1.8.13