LLVM
8.0.1
|
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/MemoryBuiltins.h"
#include "llvm/Analysis/ScalarEvolution.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GetElementPtrTypeIterator.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/Pass.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Transforms/Scalar.h"
#include <cassert>
#include <cstdint>
#include <string>
Go to the source code of this file.
Functions | |
INITIALIZE_PASS_BEGIN (SeparateConstOffsetFromGEP, "separate-const-offset-from-gep", "Split GEPs to a variadic base and a constant offset for better CSE", false, false) INITIALIZE_PASS_END(SeparateConstOffsetFromGEP | |
Variables | |
static cl::opt< bool > | DisableSeparateConstOffsetFromGEP ("disable-separate-const-offset-from-gep", cl::init(false), cl::desc("Do not separate the constant offset from a GEP instruction"), cl::Hidden) |
static cl::opt< bool > | VerifyNoDeadCode ("reassociate-geps-verify-no-dead-code", cl::init(false), cl::desc("Verify this pass produces no dead code"), cl::Hidden) |
separate const offset from | gep |
separate const offset from Split GEPs to a variadic base and a constant offset for better | CSE |
separate const offset from Split GEPs to a variadic base and a constant offset for better | false |
INITIALIZE_PASS_BEGIN | ( | SeparateConstOffsetFromGEP | , |
"separate-const-offset-from-gep" | , | ||
"Split GEPs to a variadic base and a constant offset for better CSE" | , | ||
false | , | ||
false | |||
) |
Definition at line 476 of file SeparateConstOffsetFromGEP.cpp.
Referenced by llvm::ARMTargetLowering::ReplaceNodeResults(), llvm::EarlyCSEPass::run(), and llvm::codeview::DebugSubsectionVisitor::visitUnknown().
|
static |
Referenced by llvm::createSeparateConstOffsetFromGEPPass().
Definition at line 476 of file SeparateConstOffsetFromGEP.cpp.
separate const offset from gep |
Definition at line 476 of file SeparateConstOffsetFromGEP.cpp.
Referenced by llvm::InnerLoopVectorizer::vectorizeInterleaveGroup(), and llvm::InnerLoopVectorizer::vectorizeMemoryInstruction().