search for: createloopunswitchpass

Displaying 11 results from an estimated 11 matches for "createloopunswitchpass".

2017 Dec 21
2
Pass ordering - GVN vs. loop optimizations
...run after GVN: // Rotate Loop - disable header duplication at -Oz MPM.add(createLoopRotatePass(SizeLevel == 2 ? 0 : -1)); MPM.add(createLICMPass()); // Hoist loop invariants if (EnableSimpleLoopUnswitch) MPM.add(createSimpleLoopUnswitchLegacyPass()); else MPM.add(createLoopUnswitchPass(SizeLevel || OptLevel < 3, DivergentTarget)); MPM.add(createCFGSimplificationPass()); addInstructionCombiningPass(MPM); MPM.add(createIndVarSimplifyPass()); // Canonicalize indvars // <I probably want to add some SimplifyCfg pass here, but // that's a separate issue>...
2006 Sep 03
0
[LLVMdev] llvm-gcc4: Enable various optimizations at -O1/-O2
...PerModulePasses->add(createCFGSimplificationPass()); // Merge & remove BBs + PerModulePasses->add(createReassociatePass()); // Reassociate expressions + PerModulePasses->add(createLICMPass()); // Hoist loop invariants + PerModulePasses->add(createLoopUnswitchPass()); // Unswitch loops. + PerModulePasses->add(createInstructionCombiningPass()); // Clean up after LICM/reassoc + PerModulePasses->add(createIndVarSimplifyPass()); // Canonicalize indvars + PerModulePasses->add(createLoopUnrollPass()); // Unroll sma...
2007 Dec 06
0
[LLVMdev] 2.1 compile problem with undefined symbols
...lvm-2.1/configure --enable-optimized --prefix=/opt/local ... > make tools-only ... llvm[2]: Linking Release executable opt (without symbols) /usr/bin/ld: warning prebinding disabled because of undefined symbols /usr/bin/ld: Undefined symbols: llvm::createGVNPass() llvm::createGVNPREPass() llvm::createLoopUnswitchPass(bool) llvm::createLoopIndexSplitPass() llvm::CheckBitcodeOutputToConsole(std::basic_ostream<char, std::char_traits<char> >*, bool) llvm::createScalarReplAggregatesPass(int) llvm::createRedundantLoadEliminationPass() collect2: ld returned 1 exit status
2013 Sep 25
0
[LLVMdev] [Polly] Move Polly's execution later
...lCallEliminationPass());   // also called in Polly   MPM.add(createCFGSimplificationPass());     // also called in Polly   MPM.add(createReassociatePass());           // also called in Polly   MPM.add(createLoopRotatePass());            // also called in Polly   MPM.add(createLICMPass());   MPM.add(createLoopUnswitchPass(SizeLevel || OptLevel < 3));    The initial idea is to move Polly immediately after LoopRotatePass, which will maximum the reuse of canonicalization passes and we need only keep one canonicalization pass "createPromoteMemoryToRegisterPass" in Polly. Unfortunately, it would lead to erro...
2013 Sep 25
3
[LLVMdev] [Polly] Move Polly's execution later
...also called in Polly > MPM.add(createCFGSimplificationPass()); // also called in Polly > MPM.add(createReassociatePass()); // also called in Polly > MPM.add(createLoopRotatePass()); // also called in Polly > MPM.add(createLICMPass()); > MPM.add(createLoopUnswitchPass(SizeLevel || OptLevel < 3)); > > The initial idea is to move Polly immediately after LoopRotatePass, which will maximum the reuse of canonicalization passes and we need only keep one canonicalization pass "createPromoteMemoryToRegisterPass" in Polly. Unfortunately, it would lead...
2013 Sep 22
4
[LLVMdev] [Polly] Move Polly's execution later
Hi Tobias, At 2013-09-19 22:59:25,"Tobias Grosser" <tobias at grosser.es> wrote: >On 09/19/2013 04:46 PM, Star Tan wrote: >> Hi Tobias, >> >> >> I am trying to move Polly later. >> >> >> LLVM provides some predefined ExtensionPointTy: >> EP_EarlyAsPossible, >> EP_ModuleOptimizerEarly, >>
2013 Apr 17
1
[LLVMdev] [polly] pass ordering
----- Original Message ----- > From: "Tobias Grosser" <tobias at grosser.es> > To: "Sebastian Pop" <spop at codeaurora.org> > Cc: llvmdev at cs.uiuc.edu > Sent: Wednesday, April 17, 2013 12:45:26 PM > Subject: Re: [LLVMdev] [polly] pass ordering > > On 04/17/2013 05:53 PM, Sebastian Pop wrote: > > Hi, > > > > polly is run very
2013 Jul 28
0
[LLVMdev] IR Passes and TargetTransformInfo: Straw Man
...PM.add(createCFGSimplificationPass()); // Merge & remove BBs + PM.add(createReassociatePass()); // Reassociate expressions + PM.add(createLoopRotatePass()); // Rotate Loop + PM.add(createLICMPass()); // Hoist loop invariants + PM.add(createLoopUnswitchPass(SizeLevel || OptLevel < 3)); + PM.add(createIndVarSimplifyPass()); // Canonicalize indvars + PM.add(createLoopIdiomPass()); // Recognize idioms like memset. + PM.add(createLoopDeletionPass()); // Delete dead loops + + if (/*LoopVectorize &&...
2013 Jul 18
3
[LLVMdev] IR Passes and TargetTransformInfo: Straw Man
Andy and I briefly discussed this the other day, we have not yet got chance to list a detailed pass order for the pre- and post- IPO scalar optimizations. This is wish-list in our mind: pre-IPO: based on the ordering he propose, get rid of the inlining (or just inline tiny func), get rid of all loop xforms... post-IPO: get rid of inlining, or maybe we still need it, only
2011 Apr 05
3
[LLVMdev] Building LLVM on Solaris/Sparc
...ols/opt/Debug+Asserts/opt.o vtable for llvm::cl::opt<bool, false, llvm::cl::parser<bool> >/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createLoopUnrollPass() /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createLoopUnswitchPass(bool) /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::SMDiagnostic::Print(char const*, llvm::raw_ostream&) const/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createPruneEHPass() /n/fs/scratch/tpondich/ParallelAsser...
2007 Apr 30
1
[LLVMdev] llvm-gcc build broken
...pe /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:320: error: `createLoopRotatePass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:321: error: `createLICMPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:322: error: `createLoopUnswitchPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:324: error: `createIndVarSimplifyPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:326: error: `createLoopUnrollPass' was not declared in this scope /projects/compiler/...