<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><br>
</p>
<div class="moz-cite-prefix">On 06/29/2017 04:56 PM, Chandler
Carruth via llvm-dev wrote:<br>
</div>
<blockquote
cite="mid:CAAwGriHYLD4WGQNS2iQ5E=NT9RK7mvpgY6HB97K8YWGtcWbg+w@mail.gmail.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<div dir="ltr">
<div class="gmail_quote">
<div dir="ltr">On Thu, Jun 29, 2017 at 2:52 PM Peter Lawrence
via llvm-dev <<a moz-do-not-send="true"
href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">
<div>I would start looking for a more complete example
myself, but my<br>
</div>
<div>Belief is so strong that "optimizing undefined
behavior" seems </div>
<div>like a self-contradiction to me, and I don’t know
where to</div>
<div>Even start looking.</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
<br>
To be clear (and to reiterate what Sanjoy said), you're not looking
for optimization *of* UB. You're looking for optimizing on the basis
of the assumption that the UB is not dynamically reachable. In some
contexts you can think of this as an assumption that undef/poison
values don't contribute to any observable side effects of the
program.<br>
<br>
-Hal<br>
<br>
<blockquote
cite="mid:CAAwGriHYLD4WGQNS2iQ5E=NT9RK7mvpgY6HB97K8YWGtcWbg+w@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div><br>
</div>
<div>If you can't take the time to provide evidence to back up
your belief, then...</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">
<div>So I’m eagerly awaiting Hal’s (or anyone else's) next
email<br>
</div>
<div>That has a complete example.</div>
</div>
</blockquote>
<div><br>
</div>
<div>... I don't think it is reasonable to expect others to
take their time.</div>
<div><br>
</div>
<div>I understand you have this belief and find it
incompatible with the LLVM community. I think several folks
have tried to persuade you that there is merit in the design
of LLVM here, but I understand you remain unconvinced.</div>
<div><br>
</div>
<div>Perhaps you will start a compiler project based on your
convictions here and develop it and show why that is a
better way to start a compiler project. But without actually
contributing to LLVM and showing clearly (and incrementally)
how to improve it based on your belief with evidence to back
it up, I don't think reiterating your belief on the list is
a productive thing to do.</div>
<div><br>
</div>
<div>-Chandler</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<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>
<br>
<pre class="moz-signature" cols="72">--
Hal Finkel
Lead, Compiler Technology and Programming Languages
Leadership Computing Facility
Argonne National Laboratory</pre>
</body>
</html>