<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Aug 28, 2014 at 8:05 AM, Anton Korobeynikov <span dir="ltr"><<a href="mailto:anton@korobeynikov.info" target="_blank">anton@korobeynikov.info</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">> There is a discussion is going on at <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-August/075532.html" target="_blank">http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-August/075532.html</a> regarding a more general way to handle matching<br>

> different patterns. If we can come up with a general approach that would be best. But till then we should not miss any optimizing opportunity I think.<br></div></blockquote><div><br></div><div>I'm confused.  Is there an urgent reason not to slow down and think about this?   </div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">
</div>Sure. Just present how often this pattern triggers on LLVM testsuite and SPEC.<br>
<div class="HOEnZb"><div class="h5"><br></div></div></blockquote><div>As Anton implies, everything is tradeoffs.<br></div><div> </div><div>Adding a *ton* of separate matchers (and so far i've seen a *lot* go by here) without any data that they ever trigger on anything, or make any difference, is likely to add maintenance burden/etc for little benefit.</div>
<div><br></div><div>LLVM *already* misses optimizing opportunities everywhere, *on purpose*, because the cost of getting those optimizing opportunities, in terms of both compile time and code maintenance, is greater than the benefit to the program runtime.</div>
<div><br></div><div>I don't see why this area of the compiler would be subject to different rules.</div><div><br></div><div>So, like Anton, i'd really like to see data here, or a real design, as the amount of stuff being added is getting quite large.</div>
<div><br></div><div><br></div></div></div></div>