[LLVMdev] Parallel Loop Metadata

Redmond, Paul paul.redmond at intel.com
Tue Feb 19 10:29:42 PST 2013


I just want to mention that I am working on handling this as well as starting work on maintaining the metadata in passes where it is currently lost (starting with LoopRotation)

paul

On 2013-02-15, at 11:59 AM, Pekka Jääskeläinen wrote:

> Hi,
> 
> On 02/15/2013 06:37 PM, Redmond, Paul wrote:
>> Is it fair to say that we require loops to be in canonical form with a
>> single backedge to which we attach llvm.loop.parallel? Or is it the
>> frontend's responsibility to attach the metadata to each backedge?
> 
> I have assumed so far only a single backedge.
> 
> I think we have to annotate all the backedges in Clang where the
> parallel pragmas etc. are handled, and ensure the loop canonicalizer
> and similar passes then retain the metadata in the latches. Otherwise
> it reduces the applicability too much.
> 
>> How does pocl deal with this?
> 
> It doesn't have to as it generates "perfect" parallel for-loops
> for the work-item loops where this metadata is used.
> 
> -- 
> Pekka





More information about the llvm-dev mailing list