Home
last modified time | relevance | path

Searched refs:MemorySSA (Results 1 – 25 of 50) sorted by relevance

12

/openbsd-src/gnu/llvm/llvm/lib/Analysis/
H A DMemorySSA.cpp103 const MemorySSA *MSSA;
106 MemorySSAAnnotatedWriter(const MemorySSA *M) : MSSA(M) {} in MemorySSAAnnotatedWriter()
124 MemorySSA *MSSA;
129 MemorySSAWalkerAnnotatedWriter(MemorySSA *M) in MemorySSAWalkerAnnotatedWriter()
401 const MemoryLocation &StartLoc, const MemorySSA &MSSA, in checkClobberSanity()
516 const MemorySSA &MSSA;
928 ClobberWalker(const MemorySSA &MSSA, DominatorTree &DT) in ClobberWalker()
991 class MemorySSA::ClobberWalkerBase {
993 MemorySSA *MSSA;
996 ClobberWalkerBase(MemorySSA *M, DominatorTree *D) : Walker(*M, *D), MSSA(M) {} in ClobberWalkerBase()
[all …]
H A DMemorySSAUpdater.cpp572 MemorySSA *MSSA) { in getNewDefiningAccessForClone()
609 const MemorySSA::AccessList *Acc = MSSA->getBlockAccesses(BB); in cloneUsesAndDefs()
631 MSSA->insertIntoListsForBlock(NewUseOrDef, NewBB, MemorySSA::End); in cloneUsesAndDefs()
872 MemorySSA::DefsList *Defs = MSSA->getWritableBlockDefs(BB); in applyInsertUpdates()
1201 MemorySSA::InsertionPlace Where) { in moveToPlace()
1202 if (Where != MemorySSA::InsertionPlace::BeforeTerminator) in moveToPlace()
1208 return moveTo(What, BB, MemorySSA::InsertionPlace::End); in moveToPlace()
1215 MemorySSA::AccessList *Accs = MSSA->getWritableBlockAccesses(From); in moveAllAccesses()
1231 MSSA->moveTo(MUD, To, MemorySSA::End); in moveAllAccesses()
1279 MSSA->moveTo(Phi, New, MemorySSA::Beginning); in wireOldPredecessorsToNewImmediatePredecessor()
[all …]
H A DCMakeLists.txt104 MemorySSA.cpp
/openbsd-src/gnu/llvm/llvm/docs/
H A DMemorySSA.rst2 MemorySSA title
11 ``MemorySSA`` is an analysis that allows us to cheaply reason about the
15 result in quadratic-time algorithms in LLVM. Additionally, ``MemorySSA`` doesn't
17 better results, too. One common use of ``MemorySSA`` is to quickly find out
21 At a high level, one of the goals of ``MemorySSA`` is to provide an SSA based
27 This document goes over how ``MemorySSA`` is structured, and some basic
28 intuition on how ``MemorySSA`` works.
30 A paper on MemorySSA (with notes about how it's implemented in GCC) `can be
34 GCC's, LLVM's MemorySSA is intraprocedural.
37 MemorySSA Structure
[all …]
H A DUserGuides.rst47 MemorySSA
142 :doc:`MemorySSA`
143 Information about the MemorySSA utility in LLVM, as well as how to use it.
/openbsd-src/gnu/llvm/llvm/include/llvm/Analysis/
H A DMemorySSAUpdater.h56 MemorySSA *MSSA;
66 MemorySSAUpdater(MemorySSA *MSSA) : MSSA(MSSA) {} in MemorySSAUpdater()
131 MemorySSA::InsertionPlace Where);
192 MemorySSA::InsertionPlace Point);
242 MemorySSA* getMemorySSA() const { return MSSA; } in getMemorySSA()
H A DMemorySSA.h211 friend class MemorySSA; variable
281 friend class MemorySSA;
351 friend class MemorySSA;
374 friend class MemorySSA;
635 friend class MemorySSA;
700 class MemorySSA {
702 MemorySSA(Function &, AliasAnalysis *, DominatorTree *);
706 MemorySSA(MemorySSA &&) = delete;
708 ~MemorySSA();
946 Result(std::unique_ptr<MemorySSA> &&MSSA) : MSSA(std::move(MSSA)) {}
[all …]
H A DLoopAnalysisManager.h42 class MemorySSA; variable
61 MemorySSA *MSSA;
/openbsd-src/gnu/llvm/llvm/lib/Target/AMDGPU/
H A DAMDGPUPromoteKernelArguments.cpp33 MemorySSA *MSSA;
52 bool run(Function &F, MemorySSA &MSSA, AliasAnalysis &AA);
153 bool AMDGPUPromoteKernelArguments::run(Function &F, MemorySSA &MSSA, in run()
189 MemorySSA &MSSA = getAnalysis<MemorySSAWrapperPass>().getMSSA(); in runOnFunction()
210 MemorySSA &MSSA = AM.getResult<MemorySSAAnalysis>(F).getMSSA(); in run()
H A DAMDGPUAnnotateUniformValues.cpp33 MemorySSA *MSSA;
/openbsd-src/gnu/llvm/llvm/include/llvm/Transforms/Scalar/
H A DMemCpyOptimizer.h33 class MemorySSA; variable
45 MemorySSA *MSSA = nullptr;
55 AssumptionCache *AC, DominatorTree *DT, MemorySSA *MSSA);
H A DGVN.h50 class MemorySSA; variable
265 OptimizationRemarkEmitter *ORE, MemorySSA *MSSA = nullptr);
/openbsd-src/gnu/llvm/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h35 class MemorySSA; variable
119 Loop *L = nullptr, MemorySSA *MSSA = nullptr);
122 MemorySSA *MSSA = nullptr);
190 LoopInfo *LI, MemorySSA *MSSA = nullptr);
196 LoopInfo &LI, MemorySSA *MSSA);
545 const MemorySSA &MSSA,
/openbsd-src/gnu/llvm/llvm/lib/Target/AMDGPU/Utils/
H A DAMDGPUMemoryUtils.h23 class MemorySSA; variable
41 bool isClobberedInFunction(const LoadInst *Load, MemorySSA *MSSA,
H A DAMDGPUMemoryUtils.cpp149 bool isClobberedInFunction(const LoadInst *Load, MemorySSA *MSSA, in isClobberedInFunction()
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Scalar/
H A DLoopSink.cpp230 MSSAU->createMemoryAccessInBB(IC, nullptr, N, MemorySSA::Beginning); in sinkInstruction()
258 MSSAU->moveToPlace(OldMemAcc, MoveBB, MemorySSA::Beginning); in sinkInstruction()
268 MemorySSA &MSSA, in sinkLoopInvariantInstructions()
334 MemorySSA &MSSA = FAM.getResult<MemorySSAAnalysis>(F).getMSSA(); in run()
397 MemorySSA &MSSA = getAnalysis<MemorySSAWrapperPass>().getMSSA(); in runOnLoop()
H A DLICM.cpp164 static bool pointerInvalidatedByLoop(MemorySSA *MSSA, MemoryUse *MU,
167 static bool pointerInvalidatedByBlock(BasicBlock &BB, MemorySSA &MSSA,
180 static void foreachMemoryAccess(MemorySSA *MSSA, Loop *L,
185 collectPromotionCandidates(MemorySSA *MSSA, AliasAnalysis *AA, Loop *L);
191 TargetTransformInfo *TTI, ScalarEvolution *SE, MemorySSA *MSSA,
228 MemorySSA *MSSA = &getAnalysis<MemorySSAWrapperPass>().getMSSA(); in runOnLoop()
362 MemorySSA *MSSA) in SinkAndHoistLICMFlags()
368 Loop *L, MemorySSA *MSSA) in SinkAndHoistLICMFlags()
397 ScalarEvolution *SE, MemorySSA *MSSA, in runOnLoop()
1159 MemorySSA *MSSA = MSSAU.getMemorySSA(); in canSinkOrHoistInst()
[all …]
H A DLoopInstSimplify.cpp76 MemorySSA *MSSA = MSSAU ? MSSAU->getMemorySSA() : nullptr; in simplifyLoopInst()
196 MemorySSA *MSSA = &getAnalysis<MemorySSAWrapperPass>().getMSSA(); in runOnLoop()
H A DLoopDeletion.cpp402 LoopInfo &LI, MemorySSA *MSSA, in breakBackedgeIfNotTaken()
440 MemorySSA *MSSA, in deleteLoopIfDead()
577 MemorySSA *MSSA = nullptr; in runOnLoop()
H A DGVNHoist.cpp262 MemoryDependenceResults *MD, MemorySSA *MSSA) in GVNHoist()
284 MemorySSA *MSSA;
636 const MemorySSA::AccessList *Acc = MSSA->getBlockAccesses(BB); in hasMemoryUse()
1055 MSSAUpdater->moveToPlace(NewMemAcc, DestBB, MemorySSA::BeforeTerminator); in removeAndReplace()
1244 MemorySSA &MSSA = AM.getResult<MemorySSAAnalysis>(F).getMSSA(); in run()
H A DDeadStoreElimination.cpp798 MemorySSA &MSSA;
844 DSEState(Function &F, AliasAnalysis &AA, MemorySSA &MSSA, DominatorTree &DT, in DSEState()
2035 static bool eliminateDeadStores(Function &F, AliasAnalysis &AA, MemorySSA &MSSA, in eliminateDeadStores()
2222 MemorySSA &MSSA = AM.getResult<MemorySSAAnalysis>(F).getMSSA(); in run()
2264 MemorySSA &MSSA = getAnalysis<MemorySSAWrapperPass>().getMSSA(); in runOnFunction()
H A DLoopPassManager.cpp222 MemorySSA *MSSA = in run()
/openbsd-src/gnu/usr.bin/clang/libLLVMAnalysis/
H A DMakefile85 MemorySSA.cpp \
/openbsd-src/gnu/llvm/llvm/utils/gn/secondary/llvm/lib/Analysis/
H A DBUILD.gn93 "MemorySSA.cpp",
/openbsd-src/gnu/llvm/llvm/lib/CodeGen/
H A DInterleavedLoadCombinePass.cpp65 InterleavedLoadCombineImpl(Function &F, DominatorTree &DT, MemorySSA &MSSA, in InterleavedLoadCombineImpl()
83 MemorySSA &MSSA;

12