[LLVMdev] Parallel Loop Metadata

Redmond, Paul paul.redmond at intel.com
Thu Feb 21 13:15:06 PST 2013


Hi Pekka,

On 2013-02-21, at 4:10 PM, Pekka Jääskeläinen wrote:

> On 02/21/2013 10:12 PM, Redmond, Paul wrote:
>> I've attached some IR which shows what I'm asking about. If you run this
>> through opt "inner" will be inlined and both loops in "outer" will have the
>> same loop id metadata..
> 
> In your test case the two loops illegally share a loop id MD (!0) the first
> place, thus the bug is in the producer of the loop MD that created that
> loop metadata.
> 

Ok, that was really what I was trying to ask--do the loop ids need to be unique? There is nothing preventing this from happening and the documentation doesn't state this requirement.

paul

> The idea of the loop ID metadata is that it truly is a unique MDNode per
> loop, *universally* (stay unique even after Module linkage). I.e., you
> need to create a new self-referential ID metadata for each loop.
> 
> -- 
> --Pekka





More information about the llvm-dev mailing list