Displaying 18 results from an estimated 18 matches for "createscalarreplaggregatespass".
2007 Jul 13
0
[LLVMdev] llvm-gcc-4-2 development branch is open
...0);
llvm::createVerifierPass();
- llvm::WriteBitcodeToFile(0, llvm::cout);
+ llvm::CreateBitcodeWriterPass(*llvm::cout);
+ llvm::WriteBitcodeToFile(0, *llvm::cout);
llvm::ParseBitcodeFile(NULL);
+ llvm::MemoryBuffer::getNewMemBuffer(0);
llvm::createInstructionCombiningPass();
llvm::createScalarReplAggregatesPass();
2011 Jul 01
0
[LLVMdev] How to prevent generation of wide integers in LLVM IR?
...rmally used. If you're looking at the opt output, beware that some
of those passes are analysis passes that get added automatically and
shouldn't be added manually.
To avoid -scalarrepl, just pretend it says -mem2reg instead of
-scalarrepl (or createPromoteMemoryToRegisterPass() instead of
createScalarReplAggregatesPass(...), if you're reading the header).
Alternatively, you could volunteer to rewrite the C backend to use the
common backend infrastructure used by most of the other backends (as
has been proposed on this list before). That would enable it to handle
wide integers: they would "automatically...
2011 Jul 01
2
[LLVMdev] How to prevent generation of wide integers in LLVM IR?
On 01.07.2011 12:03, Eli Friedman wrote:
> On Fri, Jul 1, 2011 at 12:53 AM, Корчагин Василий
> <vasiliy.korchagin at gmail.com> wrote:
>> Hello, LLVMdev.
>>
>> The problem is that C backend doesn't support integers wider than 64
>> bits, but I need to use it on programs with wide integers in LLVM IR. My
>> question is how to deny LLVM to generate wide
2013 Jul 28
0
[LLVMdev] IR Passes and TargetTransformInfo: Straw Man
...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()); // Catch trivial redundancies
+ MPM.add(createJumpThreadingPass()); // Thread jumps.
+ MPM.add(createCorrelatedValuePropagationPass());// Propagate conditionals
+ MPM.add(createCFGSimplificationPass());...
2006 Sep 03
0
[LLVMdev] llvm-gcc4: Enable various optimizations at -O1/-O2
...t;add(createRaisePointerReferencesPass());//
Recover type information
+ }
+
+ PerModulePasses->add(createTailDuplicationPass()); //
Simplify cfg by copying code
+ PerModulePasses->add(createCFGSimplificationPass()); // Merge
& remove BBs
+ PerModulePasses->add(createScalarReplAggregatesPass()); // Break
up aggregate allocas
+ PerModulePasses->add(createInstructionCombiningPass()); //
Combine silly seq's
+ PerModulePasses->add(createCondPropagationPass()); //
Propagate conditionals
+ PerModulePasses->add(createTailCallEliminationPass()); //
Eliminate...
2007 Jul 13
2
[LLVMdev] llvm-gcc-4-2 development branch is open
...gt; - llvm::WriteBitcodeToFile(0, llvm::cout);
> + llvm::CreateBitcodeWriterPass(*llvm::cout);
> + llvm::WriteBitcodeToFile(0, *llvm::cout);
> llvm::ParseBitcodeFile(NULL);
> + llvm::MemoryBuffer::getNewMemBuffer(0);
>
> llvm::createInstructionCombiningPass();
> llvm::createScalarReplAggregatesPass();
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
-Chris
--
http://nondot.org/sabre/
http://llvm.org/
2007 Dec 06
0
[LLVMdev] 2.1 compile problem with undefined symbols
...ing disabled because of undefined symbols
/usr/bin/ld: Undefined symbols:
llvm::createGVNPass()
llvm::createGVNPREPass()
llvm::createLoopUnswitchPass(bool)
llvm::createLoopIndexSplitPass()
llvm::CheckBitcodeOutputToConsole(std::basic_ostream<char,
std::char_traits<char> >*, bool)
llvm::createScalarReplAggregatesPass(int)
llvm::createRedundantLoadEliminationPass()
collect2: ld returned 1 exit status
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
2007 Jul 11
12
[LLVMdev] llvm-gcc-4-2 development branch is open
Hi All,
llvm-gcc-4-2 development branch is now open for development at
llvm.org/svn/llvm-project/llvm-gcc-4-2
It is not yet ready, it can not even bootstrap. I welcome LLVM
developers to test and apply fixes!
However, first take a note of ground rules :
1) LLVM developers, use your write access as judiciously as you use it
for LLVM development and follow same check-in procedure.
2)
2012 Aug 24
2
[LLVMdev] Stop opt from producing 832 bit integer?
I'm translating llvm's intermediate representation, after optimization, to
the intermediate representation of another optimizer.
One of the problems I've run into is that llvm sometimes (although rarely)
produces strangely sized integers after an opt pass with -O3 (in this
example, 832 bits). I need to use 8, 16, or 32 bit integers for the other
intermediate language. In short,
2008 May 20
4
[LLVMdev] Optimization passes organization and tradeoffs
...9;m compiling is comparable to C (without any exception
handling or garbage collection, so none of the related passes are needed).
My first attempt at collecting useful optimizations looks like this:
passManager->add(new TargetData(*executionEngine->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(c...
2013 Jan 02
0
[LLVMdev] [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?
Hi Duncan & Tobi,
Thanks a lot for your interest, and for pointing out differences in GIMPLE
I missed.
Attached is simplified test case. Is it good?
Tobi, regarding runtime alias analysis: in KernelGen we already do it along
with runtime values substitution. For example:
<------------------ __kernelgen_main_loop_17: compile started
--------------------->
Integer args substituted:
2014 Sep 01
2
[LLVMdev] Problem linking and JITing code through C++-API
...();
// Run optimization passes.
// std::vector<const char *> exportList;
// llvm::PassManager Passes;
// Passes.add(new llvm::DataLayout(rtlib));
// Passes.add(llvm::createDemoteRegisterToMemoryPass());
// Passes.add(llvm::createInternalizePass(exportList));
// Passes.add(llvm::createScalarReplAggregatesPass());
// Passes.add(llvm::createInstructionCombiningPass());
// Passes.add(llvm::createGlobalOptimizerPass());
// Passes.add(llvm::createFunctionInliningPass());
// Passes.run(*rtlib);
// Create the JIT
llvm::InitializeNativeTarget();
llvm::ExecutionEngine * jit = llvm::EngineBuilder(r...
2013 Jan 02
2
[LLVMdev] [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?
On 01/01/2013 02:45 PM, Duncan Sands wrote:
> Hi Dmitry,
>
>>
>> In our compiler we use a modified version LLVM Polly, which is very
>> sensitive to
>> proper code generation. Among the number of limitations, the loop region
>> (enclosed by phi node on induction variable and branch) is required to
>> be free
>> of additional memory-dependent
2014 Sep 02
2
[LLVMdev] Problem linking and JITing code through C++-API
...const char *> exportList;
>
> // llvm::PassManager Passes;
>
> // Passes.add(new llvm::DataLayout(rtlib));
>
> // Passes.add(llvm::createDemoteRegisterToMemoryPass());
>
> // Passes.add(llvm::createInternalizePass(exportList));
>
> // Passes.add(llvm::createScalarReplAggregatesPass());
>
> // Passes.add(llvm::createInstructionCombiningPass());
>
> // Passes.add(llvm::createGlobalOptimizerPass());
>
> // Passes.add(llvm::createFunctionInliningPass());
>
> // Passes.run(*rtlib);
>
> // Create the JIT
>
> llvm::InitializeNati...
2014 Sep 08
2
[LLVMdev] Problem linking and JITing code through C++-API
...// llvm::PassManager Passes;
> >
> > // Passes.add(new llvm::DataLayout(rtlib));
> >
> > // Passes.add(llvm::createDemoteRegisterToMemoryPass());
> >
> > // Passes.add(llvm::createInternalizePass(exportList));
> >
> > // Passes.add(llvm::createScalarReplAggregatesPass());
> >
> > // Passes.add(llvm::createInstructionCombiningPass());
> >
> > // Passes.add(llvm::createGlobalOptimizerPass());
> >
> > // Passes.add(llvm::createFunctionInliningPass());
> >
> > // Passes.run(*rtlib);
> >
> > /...
2007 Apr 30
1
[LLVMdev] llvm-gcc build broken
...-gcc/gcc/llvm-backend.cpp:267: error:
`createCFGSimplificationPass' was not declared in this scope
/projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:269: error:
`createPromoteMemoryToRegisterPass' was not declared in this scope
/projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:271: error:
`createScalarReplAggregatesPass' was not declared in this scope
/projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:272: error:
`createInstructionCombiningPass' was not declared in this scope
/projects/compiler/llvm-gcc/gcc/llvm-backend.cpp:277: error:
`PerModulePasses' was not declared in this scope
/projects/compiler...
2011 Apr 05
3
[LLVMdev] Building LLVM on Solaris/Sparc
...ch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o
llvm::createLoopSimplifyPass()
/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o
llvm::Pass::~Pass()
/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/GraphPrinters.o
llvm::createScalarReplAggregatesPass(int,
bool)/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/opt.o
llvm::DominanceFrontier::ID
/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/tools/opt/Debug+Asserts/GraphPrinters.o
llvm::createRegionOnlyPrinterPass()
/n/fs/scratch/tpondich/ParallelAssert/llvm-objects/to...