<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">I can see the arguments pro independent pass, but why do you assert it will make the code much easier to review? The code is coherent as it is and won’t change whether it is  part of GVN or its own phase. <div><br></div><div>Thanks</div><div>Gerolf</div><div><br><div><div><div><div><br></div><div><br><div><div>On May 2, 2014, at 3:53 PM, Chandler Carruth <<a href="mailto:chandlerc@google.com">chandlerc@google.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Fri, May 2, 2014 at 3:20 PM, Gerolf Hoflehner <span dir="ltr"><<a href="mailto:ghoflehner@apple.com" target="_blank">ghoflehner@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>I look at GVN as the place that handles equivalent computations (full and partial, since it also covers at least some PRE).</div>
<div>On the other hand the current implementation of the InstructionMerge is independent of the GVN infrastructure and</div><div>so could run as stand-alone pass with its merits and costs.</div></blockquote></div><br>I would start off with it being an independent pass until it need some infrastructure from GVN. It also makes it much easier to review and test.</div>
</div>
</blockquote></div><br></div></div></div></div></div></body></html>