<div dir="ltr">+ Does LLVM marks values with an attribute like "value cannot be NaN/INFINITY"?</div><div class="gmail_extra"><br><div class="gmail_quote">2018-05-24 1:48 GMT+02:00 Dávid Bolvanský <span dir="ltr"><<a href="mailto:david.bolvansky@gmail.com" target="_blank">david.bolvansky@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello,<div><br></div><div>Code:</div><div><br></div><div><div style="color:rgb(0,0,0);background-color:rgb(255,255,254)"><div><span style="color:rgb(0,0,255)">int</span> f1(<span style="color:rgb(0,0,255)">int</span> a, <span style="color:rgb(0,0,255)">int</span> b) {</div><div>    <span style="color:rgb(0,0,255)">return</span> sqrt(a) > sqrt(b);</div><div>}</div><br><div><span style="color:rgb(0,0,255)">int</span> f2(<span style="color:rgb(0,0,255)">int</span> a, <span style="color:rgb(0,0,255)">int</span> b) {</div><div>    <span style="color:rgb(0,0,255)">return</span> a > b;</div><div>}</div><div><br></div><div>Possibly, under -ffast-math (to ignore NaNs), f1 could be transformed to f2 variant.</div><div><br></div><div>Also a transformation could support sin and tan, and reverse comparison for cos.</div><div><br></div><div>Suggestions?<br></div><div><br></div><div>Thanks</div></div></div></div>
</blockquote></div><br></div>