<div dir="ltr">On Fri, Jun 26, 2015 at 2:17 PM, Joerg Sonnenberger <span dir="ltr"><<a href="mailto:joerg@britannica.bec.de" target="_blank">joerg@britannica.bec.de</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Fri, Jun 26, 2015 at 12:51:38PM -0600, Sanjay Patel wrote:<br>
> Assuming the transform is correct, what is the recommended way to write<br>
> this in C/C++ to achieve the desired effect: we want both comparisons to be<br>
> evaluated (do *not* want short-circuiting)?<br>
<br>
</span>Why do you want that?<br></blockquote><div> </div><div>For performance. The statement that materializing the condition bits is as expensive as a branch is dependent on the arch, uarch, and data set. We're currently only using arch for the DAG transform. So for example, x86 globally changes all of these while PPC does not. SimplifyCFG doesn't even consider arch and does the inverse transform.<br><br>The programmer may have more knowledge about the predictability of a specific branch and would like a way to specify that to the compiler.<br><br></div><div> </div></div></div></div>