search for: createdeadstoreeliminationpass

Displaying 12 results from an estimated 12 matches for "createdeadstoreeliminationpass".

2008 Aug 11
2
[LLVMdev] Applying different Optimizations for different Functions - Questions?
...Function *CurFunc1 = M.getFunction("NewFunction1"); Function &Current1 = (*CurFunc1); Function *CurFunc2 = M.getFunction("NewFunction2"); Function &Current2 = (*CurFunc2); cerr << "Dead Store Eliminations" << std::endl; DeadStoreElim = createDeadStoreEliminationPass(); DeadStoreElim->runOnFunction(Current1); cerr << "Loop Unroll" << std::endl; LPPM = new LPPassManager(1); UnrollLoops = createLoopUnrollPass(); LPPM->add(UnrollLoops); LPPM->runOnFunction(Current2); LPPM->releaseMemory(); delete LPPM; LPPM = NU...
2013 Jan 29
0
[LLVMdev] Running a Local Buildbot
...Pass()); fpm = new FunctionPassManager(module); fpm->add(new TargetData(module)); fpm->add(createGVNPass()); fpm->add(createInstructionCombiningPass()); fpm->add(createDeadCodeEliminationPass()); fpm->add(createCFGSimplificationPass()); fpm->add(createDeadStoreEliminationPass()); InitializeNativeTarget(); atexit(llvm_shutdown); EngineBuilder builder(module); We have problems because TargetData does not seem to exist anymore. Where is the documentation describing the changes regarding TargetData and what we should do now ? I did not see anything in 3.0...
2012 Feb 29
2
[LLVMdev] problem with inlining pass
...3.0 release. I have a module generated by clang. When I optimize it, I first add an inlining pass (llvm::createFunctionInliningPass), then these passes: - own FunctionPass - llvm::createPromoteMemoryToRegisterPass - llvm::createInstructionCombiningPass - llvm::createDeadInstEliminationPass - llvm::createDeadStoreEliminationPass - new llvm::DominatorTree() - new llvm::LoopInfo() - llvm::createLoopSimplifyPass() - own FunctionPass The problem is that the last function pass (and maybe the others too) gets called with functions that the inlining pass is supposed to delete. this behavior I only saw on windows and macos in 6...
2013 Jan 28
7
[LLVMdev] Running a Local Buildbot
We're thinking about running our own buildbot against the upstream llvm and clang sources. I'm talking to our build folks and seeing what they can allow. Maybe we can contribute some build slaves to the osuosl buildbot but I'm not sure. If we do end up having to run our own buildbot, what's the best way to integrate that into the upstream web page and status notifier? Basically,
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()); lpm.add(createCFGSimplificationPass()); const int maxit = 100; int it = 0; bool changed = true; while (changed && it < maxit)...
2006 Sep 03
0
[LLVMdev] llvm-gcc4: Enable various optimizations at -O1/-O2
...SCCP + + // Run instcombine after redundancy elimination to exploit opportunities + // opened up by them. + PerModulePasses->add(createInstructionCombiningPass()); + PerModulePasses->add(createCondPropagationPass()); // Propagate conditionals + PerModulePasses->add(createDeadStoreEliminationPass()); // Delete dead stores + PerModulePasses->add(createAggressiveDCEPass()); // SSA based 'Aggressive DCE' + PerModulePasses->add(createCFGSimplificationPass()); // Merge & remove BBs + + if (optimize > 1) + PerModulePasses->add(createConstantMe...
2012 Mar 01
0
[LLVMdev] problem with inlining pass
...generated by clang. When I optimize it, I first add an > inlining pass (llvm::createFunctionInliningPass), then these passes: > - own FunctionPass > - llvm::createPromoteMemoryToRegisterPass > - llvm::createInstructionCombiningPass > - llvm::createDeadInstEliminationPass > - llvm::createDeadStoreEliminationPass > - new llvm::DominatorTree() > - new llvm::LoopInfo() > - llvm::createLoopSimplifyPass() > - own FunctionPass > > The problem is that the last function pass (and maybe the others too) > gets called > with functions that the inlining pass is supposed to delete. I think this...
2013 Jul 28
0
[LLVMdev] IR Passes and TargetTransformInfo: Straw Man
...Pass()); // Delete dead loops + + MPM.add(createGVNPass()); // Remove redundancies + MPM.add(createMemCpyOptPass()); // Remove memcpy / form memset + MPM.add(createSCCPPass()); // Constant prop with SCCP + + MPM.add(createDeadStoreEliminationPass()); // Delete dead stores + MPM.add(createAggressiveDCEPass()); // Delete dead instructions + MPM.add(createFunctionAttrsPass()); // Set readonly/readnone attrs + + MPM.add(createTailCallEliminationPass()); // Eliminate tail calls + } + + // End of CallGr...
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
2008 May 20
4
[LLVMdev] Optimization passes organization and tradeoffs
...tionEngine->getTargetData())); passManager->add(createScalarReplAggregatesPass()); // Convert to SSA form passManager->add(createSCCPPass()); // Propagate constants passManager->add(createInstructionCombiningPass()); // Peephole optimization passManager->add(createDeadStoreEliminationPass()); // Dead store elimination passManager->add(createAggressiveDCEPass()); // Aggressive dead code elimination passManager->add(createCFGSimplificationPass()); // Control-flow optimization I have several questions about this: 1) Does ScalarReplAggregates totally supe...
2011 Apr 05
3
[LLVMdev] Building LLVM on Solaris/Sparc
...rt/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::raw_ostream::operator<<(void const*)/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/GraphPrinters.o vtable for llvm::RegionPass /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createDeadStoreEliminationPass() /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::error_code::message() const /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::cl::opt<std::basic_string<char, std::char_traits<char>, std::allocator<char>...
2007 Apr 30
1
[LLVMdev] llvm-gcc build broken
...is scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:329: error: `createGCSEPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:330: error: `createSCCPPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:336: error: `createDeadStoreEliminationPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:337: error: `createAggressiveDCEPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:341: error: `createConstantMergePass' was not declared in this scope /projects/compile...