search for: createloopdeletionpass

Displaying 10 results from an estimated 10 matches for "createloopdeletionpass".

2018 Aug 09
3
Legacy Loop Pass Manager question
...oop pass manager. But it does not seem to be the case. For example for this code snippet PM.add(createIndVarSimplifyPass()); // Canonicalize indvars MPM.add(createLoopIdiomPass()); // Recognize idioms like memset. addExtensionsToPM(EP_LateLoopOptimizations, MPM); MPM.add(createLoopDeletionPass()); // Delete dead loops .. if (!DisableUnrollLoops) MPM.add(createSimpleLoopUnrollPass(OptLevel)); // Unroll small loops I see -debug-pass=Structure output: Scalar Evolution Analysis Loop Pass Manager Induction Variable Simplification Recogniz...
2008 May 07
4
[LLVMdev] Missing passes
...Elimination (-cee) Lower select instructions to branches (-lowerselect) Additionally, I found the following passes for which no documentation was present: createGVExtractionPass() createStructRetPromotionPass() createStripDeadPrototypesPass() createJumpThreadingPass() createMemCpyOptPass() createLoopDeletionPass() createCodeGenPreparePass() From what I saw in Passes.html, the passes documentation is not generated automatically? What's the policy on updating this documentation? Gr. Matthijs -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: applic...
2011 Mar 03
0
[LLVMdev] How to write optimizer loop
I've written an optimization loop, with the following form: PassManager lpm; lpm.add(createLoopDeletionPass()); lpm.add(createSCCPPass()); lpm.add(createAggressiveDCEPass()); lpm.add(createGlobalOptimizerPass()); lpm.add(createGlobalDCEPass()); lpm.add(createDeadStoreEliminationPass()); lpm.add(createLoopDeletionPass()); lpm.add(createInstructionCombiningPass()); l...
2017 Dec 21
2
Pass ordering - GVN vs. loop optimizations
...eateIndVarSimplifyPass()); // Canonicalize indvars // <I probably want to add some SimplifyCfg pass here, but // that's a separate issue> MPM.add(createLoopIdiomPass()); // Recognize idioms like memset. addExtensionsToPM(EP_LateLoopOptimizations, MPM); MPM.add(createLoopDeletionPass()); // Delete dead loops if (EnableLoopInterchange) { MPM.add(createLoopInterchangePass()); // Interchange loops MPM.add(createCFGSimplificationPass()); } if (!DisableUnrollLoops) MPM.add(createSimpleLoopUnrollPass()); // Unroll small loops addExtensionsToPM(EP_LoopO...
2008 May 07
0
[LLVMdev] Missing passes
...to branches (-lowerselect) > > Additionally, I found the following passes for which no > documentation was present: > createGVExtractionPass() > createStructRetPromotionPass() > createStripDeadPrototypesPass() > createJumpThreadingPass() > createMemCpyOptPass() > createLoopDeletionPass() > createCodeGenPreparePass() > > From what I saw in Passes.html, the passes documentation is not > generated automatically? It is not, although I think there's a 'one-liner' to help with updating it. > What's the policy on updating this documentation? It ha...
2008 May 08
0
[LLVMdev] Missing passes
...ed) (I didn't report the last one in my initial posting, though I had noticed it was missing). I've added the following passes to the documentation: > createStructRetPromotionPass() > createStripDeadPrototypesPass() > createJumpThreadingPass() > createMemCpyOptPass() > createLoopDeletionPass() > createCodeGenPreparePass() I've left out the Global Value Extraction Pass, since that doesn't seem to be a full pass in itself (no RegisterPass for example). I've also pulled Passes.html through the w3 validator, only to discover some errors of my own :-) Gr. Matthijs ------...
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
...reateLoopRotatePass()); // Rotate Loop + MPM.add(createLICMPass()); // Hoist loop invariants + MPM.add(createIndVarSimplifyPass()); // Canonicalize indvars + MPM.add(createLoopIdiomPass()); // Recognize idioms like memset. + MPM.add(createLoopDeletionPass()); // Delete dead loops + + MPM.add(createGVNPass()); // Remove redundancies + MPM.add(createMemCpyOptPass()); // Remove memcpy / form memset + MPM.add(createSCCPPass()); // Constant prop with SCCP + + MPM.add(crea...
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
...pondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o vtable for llvm::ImmutablePass /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createTailDuplicationPass() /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createLoopDeletionPass() /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::RGPassManager::RGPassManager(int)/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createSCCPPass() /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asse...