Displaying 9 results from an estimated 9 matches for "ep_loopoptimizerend".
2013 Sep 19
2
[LLVMdev] [Polly] Move Polly's execution later
Hi Tobias,
I am trying to move Polly later.
LLVM provides some predefined ExtensionPointTy:
EP_EarlyAsPossible,
EP_ModuleOptimizerEarly,
EP_LoopOptimizerEnd,
EP_ScalarOptimizerLate,
...
Currently Polly uses "EP_EarlyAsPossible" to run as early as possible. As what you suggested:
>Instead of removing canonicalization passes, I believe we may want to
>move Polly to a later place in the pass manager. Possibly at the
>beginn...
2013 Sep 19
0
[LLVMdev] [Polly] Move Polly's execution later
On 09/19/2013 04:46 PM, Star Tan wrote:
> Hi Tobias,
>
>
> I am trying to move Polly later.
>
>
> LLVM provides some predefined ExtensionPointTy:
> EP_EarlyAsPossible,
> EP_ModuleOptimizerEarly,
> EP_LoopOptimizerEnd,
> EP_ScalarOptimizerLate,
> ...
>
>
> Currently Polly uses "EP_EarlyAsPossible" to run as early as possible. As what you suggested:
>> Instead of removing canonicalization passes, I believe we may want to
>> move Polly to a later place in the pass ma...
2017 Dec 21
2
Pass ordering - GVN vs. loop optimizations
...tionPass()); // Delete dead loops
if (EnableLoopInterchange) {
MPM.add(createLoopInterchangePass()); // Interchange loops
MPM.add(createCFGSimplificationPass());
}
if (!DisableUnrollLoops)
MPM.add(createSimpleLoopUnrollPass()); // Unroll small loops
addExtensionsToPM(EP_LoopOptimizerEnd, MPM);
// <GVN is now immediately after loop optimizatons
if (OptLevel > 1) {
MPM.add(createMergedLoadStoreMotionPass()); // Merge ld/st in diamonds
MPM.add(NewGVN ? createNewGVNPass()
: createGVNPass(DisableGVNLoadPRE)); // Remove
redundancies
}
This cause...
2013 Sep 18
0
[LLVMdev] [Polly] Compile-time and Execution-time analysis for the SCEV canonicalization
On 09/17/2013 04:12 AM, Star Tan wrote:
> Now, we come to more evaluations on http://188.40.87.11:8000/db_default/v4/nts/recent_activity
Hi Star Tan,
thanks for this very extensive analysis. The results look very
interesting. As you found out, just removing some canonicalization
passes will reduce compile time, but this reduction may in large part
being due to Polly not being able to
2013 Sep 22
4
[LLVMdev] [Polly] Move Polly's execution later
...s> wrote:
>On 09/19/2013 04:46 PM, Star Tan wrote:
>> Hi Tobias,
>>
>>
>> I am trying to move Polly later.
>>
>>
>> LLVM provides some predefined ExtensionPointTy:
>> EP_EarlyAsPossible,
>> EP_ModuleOptimizerEarly,
>> EP_LoopOptimizerEnd,
>> EP_ScalarOptimizerLate,
>> ...
>>
>>
>> Currently Polly uses "EP_EarlyAsPossible" to run as early as possible. As what you suggested:
>>> Instead of removing canonicalization passes, I believe we may want to
>>> move Polly to...
2013 Sep 25
0
[LLVMdev] [Polly] Move Polly's execution later
....es> wrote:>On 09/19/2013 04:46 PM, Star Tan wrote:
>> Hi Tobias,
>>
>>
>> I am trying to move Polly later.
>>
>>
>> LLVM provides some predefined ExtensionPointTy:
>> EP_EarlyAsPossible,
>> EP_ModuleOptimizerEarly,
>> EP_LoopOptimizerEnd,
>> EP_ScalarOptimizerLate,
>> ...
>>
>>
>> Currently Polly uses "EP_EarlyAsPossible" to run as early as possible. As what you suggested:
>>> Instead of removing canonicalization passes, I believe we may want to
>>> move Polly to...
2013 Sep 17
4
[LLVMdev] [Polly] Compile-time and Execution-time analysis for the SCEV canonicalization
Now, we come to more evaluations on http://188.40.87.11:8000/db_default/v4/nts/recent_activity
I mainly care about the compile-time and execution time impact for the following cases:
pBasic (run 45): clang -O3 -load LLVMPolly.so
pNoGenSCEV (run 44): clang -O3 -load LLVMPolly.so -polly-codegen-scev -polly -polly-optimizer=none -polly-code-generator=none
pNoGenSCEV_nocan (run 47): same option
2013 Jul 28
0
[LLVMdev] IR Passes and TargetTransformInfo: Straw Man
...s()); // Delete dead loops
+
+ if (/*LoopVectorize &&*/ OptLevel > 1 && SizeLevel < 2)
+ PM.add(createLoopVectorizePass());
+
+ if (!DisableUnrollLoops)
+ PM.add(createLoopUnrollPass()); // Unroll small loops
+
+ addExtensionsToPM(EP_LoopOptimizerEnd, PM);
+
+ if (OptLevel > 1)
+ PM.add(createGVNPass()); // Remove redundancies
+
+ PM.add(createInstructionCombiningPass());
+ PM.add(createDeadStoreEliminationPass()); // Delete dead stores
+ PM.add(createAggressiveDCEPass()); // Delete dead in...
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