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...