<div dir="ltr">On 28 January 2013 11:58, Pekka Jääskeläinen <span dir="ltr"><<a href="mailto:pekka.jaaskelainen@tut.fi" target="_blank">pekka.jaaskelainen@tut.fi</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Attached is a patch which uses a simple "parallel_loop" metadata attached<br>

to the loop branch instruction in the loop latch for skipping cross-iteration<br>
memory dependency checking in the LoopVectorizer. This was briefly discussed<br>
in the email thread "LoopVectorizer in OpenCL C work group autovectorization".<br></blockquote><div><br></div><div style>I agree this is a good idea, but not sure about the implementation.</div><div style><br></div>
<div style><div>+  if (latch->getTerminator()->getMetadata("parallel_loop") != NULL) {</div><div><br></div></div><div style>This seems an awfully specific check on a generic part of the code... If this metadata standard in any form? If this OpenCL specific? Does all OpenCL front-ends generate the same meta-data in that way? Etc...</div>
<div style><br></div><div style><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">It also converts the "min iteration count to vectorize" to a parameter so<br>

this can be controlled from the command line.<br></blockquote><div><br></div><div style>Is this really necessary? Do you have use cases where this would make sense?</div><div><br></div><div style>I think you should send a test case with this patch, not separate.</div>
<div style><br></div><div style>cheers,</div><div style>--renato</div></div></div></div>