[LLVMdev] [PATCH] parallel loop metadata

Dmitri Gribenko gribozavr at gmail.com
Wed Jan 30 03:37:59 PST 2013


On Wed, Jan 30, 2013 at 12:35 PM, Pekka Jääskeläinen
<pekka.jaaskelainen at tut.fi> wrote:
> Thank you all for comments,
>
>
> On 01/30/2013 11:22 AM, David Tweed wrote:
>>
>> In a personal capacity I'm quite interested in the issues of producing
>> from a
>> high-level language some LLVM IR which is labelled with vectorization info
>> (including potentially actually reordering data in memory).
>>
>> | I don't have any objections. I think the only requirement is that the
>> semantics are clearly defined.
>>
>> I think that's very important :-)
>
> ...
>
>> to be integrated. So I'd like at least a way to say "this is what I
>> _really_
>> want the vectorizer to assume" in such metadata.
>
>
> I agree. Thus, let's start with the 'parallel' semantics first, not
> the vague ones.
>
> A conclusion of some kind for me to update the patch:
>
> 1) Rename the loop branch metadata back to llvm.loop.parallel.
>
> I'll add a definition of its semantics (as comments to Loop::isParallel()):

Hello Pekka,

I think it would be better to add a section to the LangRef:
http://llvm.org/docs/LangRef.html#metadata

A good comment would be helpful, too, but LangRef should be normative.

Dmitri

-- 
main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if
(j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/




More information about the llvm-dev mailing list