[LLVMdev] [polly] pass ordering

Tobias Grosser tobias at grosser.es
Wed Apr 17 12:09:27 PDT 2013


On 04/17/2013 09:04 PM, Sebastian Pop wrote:
> Tobias Grosser wrote:
>> As said before, we could probably add it in between those two passes:
>>
>>    MPM.add(createReassociatePass());   // Reassociate expressions
>> + addExtensionsToPM(EP_LoopOptimizerStart, MPM);
>>    MPM.add(createLoopRotatePass());    // Rotate Loop
>
> As this is in the middle of other LNO passes, can you please rename
> s/EP_LoopOptimizerStart/EP_Polly_LNO/ or anything other than LoopOptimizerStart?

It is in the middle? The passes executed before are:

MPM.add(createJumpThreadingPass()); // Thread jumps.
MPM.add(createCorrelatedValuePropagationPass()); // Propagate
						    conditionals
MPM.add(createCFGSimplificationPass()); // Merge & remove
                                            BBs
MPM.add(createInstructionCombiningPass());  // Combine silly
					       seq's
 

MPM.add(createTailCallEliminationPass());   // Eliminate tail
					       calls
MPM.add(createCFGSimplificationPass());     // Merge & remove
					       BBs
MPM.add(createReassociatePass());

None of them seems to be a loop pass? So it seems to be at the start of 
the LNO.

Also, I would like to avoid calling an extension point 'Polly...'. We 
should use a name that describes its possible use or its location rather 
than a specific user.

Tobias




More information about the llvm-dev mailing list