Home
last modified time | relevance | path

Searched refs:LICM (Results 1 – 25 of 29) sorted by relevance

12

/external/llvm/lib/Transforms/Scalar/
DLICM.cpp105 struct LICM : public LoopPass { struct
107 LICM() : LoopPass(ID) { in LICM() argument
167 char LICM::ID = 0;
168 INITIALIZE_PASS_BEGIN(LICM, "licm", "Loop Invariant Code Motion", false, false)
179 INITIALIZE_PASS_END(LICM, "licm", "Loop Invariant Code Motion", false, false) in INITIALIZE_PASS_DEPENDENCY()
181 Pass *llvm::createLICMPass() { return new LICM(); } in INITIALIZE_PASS_DEPENDENCY()
187 bool LICM::runOnLoop(Loop *L, LPPassManager &LPM) { in runOnLoop()
1003 void LICM::cloneBasicBlockAnalysis(BasicBlock *From, BasicBlock *To, Loop *L) { in cloneBasicBlockAnalysis()
1013 void LICM::deleteAnalysisValue(Value *V, Loop *L) { in deleteAnalysisValue()
1023 void LICM::deleteAnalysisLoop(Loop *L) { in deleteAnalysisLoop()
DCMakeLists.txt17 LICM.cpp
DAndroid.mk19 LICM.cpp \
/external/llvm/test/Analysis/TypeBasedAliasAnalysis/
Dlicm.ll3 ; LICM should be able to hoist the address load out of the loop
36 ; LICM shouldn't hoist anything here.
/external/llvm/test/Analysis/BasicAA/
Dstore-promote.ll1 ; Test that LICM uses basicaa to do alias analysis, which is capable of
2 ; disambiguating some obvious cases. If LICM is able to disambiguate the
/external/llvm/test/Transforms/LICM/
D2003-02-27-StoreSinkPHIs.ll1 ; LICM is adding stores before phi nodes. bad.
Dno-preheader-test.ll1 ; Test that LICM works when there is not a loop-preheader
D2003-05-02-LoadHoist.ll1 ; This testcase tests for a problem where LICM hoists loads out of a loop
D2003-02-27-PreheaderProblem.ll1 ; Here we have a case where there are two loops and LICM is hoisting an
Dpromote-order.ll3 ; LICM should keep the stores in their original order when it sinks/promotes them.
Datomics.ll43 ; (The noalias shouldn't be necessary in theory, but LICM isn't quite that
Dhoisting.ll7 ; This testcase tests for a problem where LICM hoists
/external/llvm/test/CodeGen/ARM/
D2011-04-11-MachineLICMBug.ll3 ; Overly aggressive LICM simply adds copies of constants
/external/llvm/test/Transforms/LoopUnroll/
Druntime-loop4.ll3 ; Check runtime unrolling prologue can be promoted by LICM pass.
/external/llvm/test/Transforms/LoopUnswitch/
D2015-09-18-Addrspace.ll17 ; When we call makeLoopInvariant (i.e. trivial LICM) on this load, it
/external/llvm/test/Transforms/LoopSimplify/
D2003-12-10-ExitBlocksProblem.ll1 ; LoopSimplify is breaking LICM on this testcase because the exit blocks from
/external/llvm/docs/HistoricalNotes/
D2001-06-01-GCCOptimizations.txt24 11. LICM
/external/llvm/lib/Target/WebAssembly/
DREADME.txt54 AArch64 runs SeparateConstOffsetFromGEPPass, followed by EarlyCSE and LICM.
/external/llvm/test/CodeGen/Thumb2/
Dmachine-licm.ll83 ; isel should not fold immediate into eor's which would have prevented LICM.
/external/llvm/docs/Frontend/
DPerformanceTips.rst151 block is a loop exiting conditional branch, the effectiveness of LICM will
257 two of LoopUnswith and LICM to your pass order. The standard pass order,
/external/llvm/docs/
DLexicon.rst138 **LICM**
DPasses.rst797 analyses and transformations, such as :ref:`LICM <passes-licm>`.
803 into LICM.
840 This pass expects :ref:`LICM <passes-licm>` to be run before it to hoist
937 promote better constant propagation, GCSE, :ref:`LICM <passes-licm>`, PRE, etc.
DAtomics.rst367 Unordered. This would be checked, for example, by LICM before hoisting an
394 * LICM: Unordered loads/stores can be moved out of a loop. It just treats
DWritingAnLLVMPass.rst850 void LICM::getAnalysisUsage(AnalysisUsage &AU) const {
868 bool LICM::runOnFunction(Function &F) {
1111 dominator and immediate dominator information to do its job. The LICM pass
1115 compute natural loop information, which is then used by the LICM pass.
1117 After the LICM pass, the module verifier runs (which is automatically added by
/external/llvm/test/Transforms/IndVarSimplify/
Dno-iv-rewrite.ll94 ; It's not indvars' job to perform LICM on %ofs

12