mirror of
https://github.com/ldc-developers/ldc.git
synced 2025-05-06 02:45:25 +03:00
Enable FunctionAttrsPass again.
This pass requires an alias analysis, which is also added.
This commit is contained in:
parent
56233a373c
commit
34d595de26
1 changed files with 5 additions and 3 deletions
|
@ -107,6 +107,10 @@ static void addPassesForOptLevel(PassManager& pm) {
|
||||||
// -O1
|
// -O1
|
||||||
if (optimizeLevel >= 1)
|
if (optimizeLevel >= 1)
|
||||||
{
|
{
|
||||||
|
// Add alias analysis passes.
|
||||||
|
// This is at least required for FunctionAttrs pass.
|
||||||
|
addPass(pm, createTypeBasedAliasAnalysisPass());
|
||||||
|
addPass(pm, createBasicAliasAnalysisPass());
|
||||||
//addPass(pm, createStripDeadPrototypesPass());
|
//addPass(pm, createStripDeadPrototypesPass());
|
||||||
addPass(pm, createGlobalDCEPass());
|
addPass(pm, createGlobalDCEPass());
|
||||||
addPass(pm, createPromoteMemoryToRegisterPass());
|
addPass(pm, createPromoteMemoryToRegisterPass());
|
||||||
|
@ -127,9 +131,7 @@ static void addPassesForOptLevel(PassManager& pm) {
|
||||||
addPass(pm, createCFGSimplificationPass());
|
addPass(pm, createCFGSimplificationPass());
|
||||||
addPass(pm, createPruneEHPass());
|
addPass(pm, createPruneEHPass());
|
||||||
|
|
||||||
// FIXME: Adding this pass crashes LLVM 2.9 in
|
addPass(pm, createFunctionAttrsPass());
|
||||||
// PMTopLevelManager::schedulePass(), commented out for a quick fix.
|
|
||||||
// addPass(pm, createFunctionAttrsPass());
|
|
||||||
|
|
||||||
addPass(pm, createTailCallEliminationPass());
|
addPass(pm, createTailCallEliminationPass());
|
||||||
addPass(pm, createCFGSimplificationPass());
|
addPass(pm, createCFGSimplificationPass());
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue