search for: createargumentpromotionpass

Displaying 14 results from an estimated 14 matches for "createargumentpromotionpass".

2010 Mar 02
2
[LLVMdev] make SHARED_LIBRARY=1 broken?
...p:(.text+0x57d): undefined reference to `llvm::createGlobalOptimizerPass()' opt.cpp:(.text+0x5a7): undefined reference to `llvm::createDeadArgEliminationPass()' opt.cpp:(.text+0x5e6): undefined reference to `llvm::createPruneEHPass()' opt.cpp:(.text+0x64d): undefined reference to `llvm::createArgumentPromotionPass(unsigned int)' opt.cpp:(.text+0x668): undefined reference to `llvm::createFunctionAttrsPass()' opt.cpp:(.text+0x688): undefined reference to `llvm::createGlobalDCEPass()' /home/src/llvm-trunk/llvm/tools/opt/Release/opt.o: In function `(anonymous namespace)::AddOptimizationPasses(llvm::P...
2010 Mar 02
0
[LLVMdev] make SHARED_LIBRARY=1 broken?
...erence to > `llvm::createGlobalOptimizerPass()' > opt.cpp:(.text+0x5a7): undefined reference to > `llvm::createDeadArgEliminationPass()' > opt.cpp:(.text+0x5e6): undefined reference to `llvm::createPruneEHPass()' > opt.cpp:(.text+0x64d): undefined reference to > `llvm::createArgumentPromotionPass(unsigned int)' > opt.cpp:(.text+0x668): undefined reference to > `llvm::createFunctionAttrsPass()' > opt.cpp:(.text+0x688): undefined reference to `llvm::createGlobalDCEPass()' > /home/src/llvm-trunk/llvm/tools/opt/Release/opt.o: In function `(anonymous > namespace)::AddO...
2008 Apr 18
1
[LLVMdev] PATCH allow for promoting any size struct arguments
...efault pass only does this when the aggregrate has 3 or less elements, otherwise the code will be unchanged. I have a need to always promote aggregrate arguments, even when there are a lot of them. The attached patch adds a "maxElements" argument to ArgPromotion's constructor and to createArgumentPromotionPass with a default value of 3 to preserve the original behaviour. Please review and commit this patch. Gr. Matthijs -------------- next part -------------- A non-text attachment was scrubbed... Name: argpromotion-max.diff Type: text/x-diff Size: 4412 bytes Desc: not available URL: <http://lists.l...
2008 Jul 30
0
[LLVMdev] llvm-gcc fortran bootstrap broken
...alls should not be simplified. +int flag_no_simplify_libcalls; + // Global state for the LLVM backend. Module *TheModule = 0; DebugInfo *TheDebugInfo = 0; @@ -381,7 +383,7 @@ PM->add(createFunctionInliningPass()); // Inline small functions if (optimize > 2) PM->add(createArgumentPromotionPass()); // Scalarize uninlined fn args - if (!flag_no_builtin) + if (!flag_no_simplify_libcalls) PM->add(createSimplifyLibCallsPass()); // Library Call Optimizations PM->add(createInstructionCombiningPass()); // Cleanup for scalarrepl. PM->add(createJumpThreadingPa...
2008 Apr 16
3
[LLVMdev] flag_unit_at_a_time and pass scheduling in llvm-gcc
...-fno-inline-functions PM->add(createFunctionInliningPass()); // Inline small functions if (flag_unit_at_a_time && !lang_hooks.flag_no_builtin()) PM->add(createSimplifyLibCallsPass()); // Library Call Optimizations if (optimize > 2) PM->add(createArgumentPromotionPass()); // Scalarize uninlined fn args } Shouldn't createFunctionInliningPass and createArgumentPromotionPass only be called if flag_unit_at_a_time is true? As far as I can see flag_unit_at_a_time is used to control whether inter-procedural/whole-module passes are scheduled. Thanks, Duncan.
2010 Mar 02
4
[LLVMdev] make SHARED_LIBRARY=1 broken?
...ateGlobalOptimizerPass()' > > opt.cpp:(.text+0x5a7): undefined reference to > > `llvm::createDeadArgEliminationPass()' > > opt.cpp:(.text+0x5e6): undefined reference to `llvm::createPruneEHPass()' > > opt.cpp:(.text+0x64d): undefined reference to > > `llvm::createArgumentPromotionPass(unsigned int)' > > opt.cpp:(.text+0x668): undefined reference to > > `llvm::createFunctionAttrsPass()' > > opt.cpp:(.text+0x688): undefined reference to > `llvm::createGlobalDCEPass()' > > /home/src/llvm-trunk/llvm/tools/opt/Release/opt.o: In function > `(a...
2008 Jul 30
4
[LLVMdev] llvm-gcc fortran bootstrap broken
On Jul 30, 2008, at 11:39 AM, Duncan Sands wrote: > On Wednesday 30 July 2008 18:13:27 Duncan Sands wrote: >> On x86-64 linux, in stage 2, I get: >> >> c++ -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict- >> prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno- >> variadic-macros -Wno-overlength-strings -Wold-style-definition - >>
2009 Oct 24
1
[LLVMdev] [PATCH] remove usage of RaiseAllocations pass from llvm-gcc
...m-linker-hack.cpp (revision 84984) +++ gcc/llvm-linker-hack.cpp (working copy) @@ -80,7 +80,6 @@ llvm::createJumpThreadingPass(); llvm::createFunctionInliningPass(); llvm::createAlwaysInlinerPass(); - llvm::createRaiseAllocationsPass(); llvm::createSimplifyLibCallsPass(); llvm::createArgumentPromotionPass(); llvm::createDeadArgEliminationPass(); -------------- next part -------------- A non-text attachment was scrubbed... Name: RemoveRaiseAllocations.diff Type: application/octet-stream Size: 478 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091023/5b5...
2006 Sep 03
0
[LLVMdev] llvm-gcc4: Enable various optimizations at -O1/-O2
...ve dead EH info + + if (optimize > 1) { + PerModulePasses->add(createFunctionInliningPass()); // Inline small functions + PerModulePasses->add(createSimplifyLibCallsPass()); // Library Call Optimizations + + if (optimize > 2) + PerModulePasses->add(createArgumentPromotionPass()); // Scalarize uninlined fn args + + PerModulePasses->add(createRaisePointerReferencesPass());// Recover type information + } + + PerModulePasses->add(createTailDuplicationPass()); // Simplify cfg by copying code + PerModulePasses->add(createCFGSimplificationP...
2008 Jul 30
1
[LLVMdev] llvm-gcc fortran bootstrap broken
...no_simplify_libcalls; > + > // Global state for the LLVM backend. > Module *TheModule = 0; > DebugInfo *TheDebugInfo = 0; > @@ -381,7 +383,7 @@ > PM->add(createFunctionInliningPass()); // Inline small > functions > if (optimize > 2) > PM->add(createArgumentPromotionPass()); // Scalarize > uninlined fn args > - if (!flag_no_builtin) > + if (!flag_no_simplify_libcalls) > PM->add(createSimplifyLibCallsPass()); // Library Call > Optimizations > PM->add(createInstructionCombiningPass()); // Cleanup for > scalarrepl...
2013 Jul 28
0
[LLVMdev] IR Passes and TargetTransformInfo: Straw Man
...(*LibraryInfo)); + addInitialAliasAnalysisPasses(MPM); + + // Start of CallGraph SCC passes. + { + if (EnableLightWeightIPO) { + MPM.add(createPruneEHPass()); // Remove dead EH info + if (Inliner) { + MPM.add(Inliner); + Inliner = 0; + } + MPM.add(createArgumentPromotionPass()); // Scalarize uninlined fn args + } + + // Start of function pass. + { + if (UseNewSROA) + MPM.add(createSROAPass(/*RequiresDomTree*/ false)); + else + MPM.add(createScalarReplAggregatesPass(-1, false)); + + MPM.add(createEarlyCSEPass());...
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
...arallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::DominatorTree::ID /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/GraphPrinters.o llvm::createUnifyFunctionExitNodesPass() /n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::createArgumentPromotionPass(unsigned int)/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::UnreachableInst::UnreachableInst(llvm::LLVMContext&, llvm::Instruction*)/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o llvm::CallGraph::ID /n/fs/scratch/tpondich...
2007 Apr 30
1
[LLVMdev] llvm-gcc build broken
...ler/llvm-gcc/gcc/llvm-backend.cpp:303: error: `createFunctionInliningPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:305: error: `createSimplifyLibCallsPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:308: error: `createArgumentPromotionPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:311: error: `createTailDuplicationPass' was not declared in this scope /projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:314: error: `createScalarReplAggregatesPass' was not declared in this scope /project...