<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Thank you once again for the further clarifications.</p>
<p>I still have one more question:</p>
<p>What is the canoncial source for getting a definitive answer on
which optimizations are applied when, when allowing fastmath
optimizations in LLVM? <br>
</p>
<p>A pointer to a source file would also be fine. It is just that I
tried searching on <a moz-do-not-send="true"
href="http://releases.llvm.org/7.0.0/docs/Passes.html">http://releases.llvm.org/7.0.0/docs/Passes.html</a>
and did not find any information there, so I am feeling a bit
lost.</p>
<p>Thank you,</p>
<p>Heiko<br>
</p>
<div class="moz-cite-prefix">On 11/30/18 3:34 PM, Stephen Canon via
llvm-dev wrote:<br>
</div>
<blockquote type="cite"
cite="mid:280B5957-CCE7-49D1-8AF9-43D833CD7998@apple.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<blockquote type="cite" class="">On Nov 30, 2018, at 9:24 AM,
Nicolai Hähnle via llvm-dev <<a
href="mailto:llvm-dev@lists.llvm.org" class=""
moz-do-not-send="true">llvm-dev@lists.llvm.org</a>> wrote:<br
class="">
</blockquote>
<div>
<blockquote type="cite" class=""><br
class="Apple-interchange-newline">
<div class=""><span style="caret-color: rgb(0, 0, 0);
font-family: Helvetica; font-size: 12px; font-style:
normal; font-variant-caps: normal; font-weight: normal;
letter-spacing: normal; text-align: start; text-indent:
0px; text-transform: none; white-space: normal;
word-spacing: 0px; -webkit-text-stroke-width: 0px;
text-decoration: none; float: none; display: inline
!important;" class="">Stephen was a bit hesitant about
what to call the x * (y + 1) --> x * y + x
FMA-introducing transform on the grounds that it
superficially only seems to improve the precision at which
the expression is evaluated.</span></div>
</blockquote>
<div><br class="">
</div>
<div>It’s a little bit more subtle than that; because FMA is
computed without internal rounding, under an as-if model, you
can’t differentiate between fma(x, y, x) and a hypothetical
correctly-rounded x*(y + 1), so it doesn’t even make sense to
talk about “distributivity” in this context ...</div>
<br class="">
<blockquote type="cite" class="">
<div class=""><span style="caret-color: rgb(0, 0, 0);
font-family: Helvetica; font-size: 12px; font-style:
normal; font-variant-caps: normal; font-weight: normal;
letter-spacing: normal; text-align: start; text-indent:
0px; text-transform: none; white-space: normal;
word-spacing: 0px; -webkit-text-stroke-width: 0px;
text-decoration: none; float: none; display: inline
!important;" class=""> My point was that this very same
transform can introduce very significant, qualitative
differences in the result when inf is involved.</span></div>
</blockquote>
</div>
<br class="">
<div class="">… except with regard to inf/nan edge cases, as you
correctly pointed out. =)</div>
<div class=""><br class="">
</div>
<div class="">– Steve</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a>
</pre>
</blockquote>
</body>
</html>