<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Tue, Mar 15, 2016 at 12:13 PM Cownie, James H <<a href="mailto:james.h.cownie@intel.com">james.h.cownie@intel.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-GB" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><a name="msg-f:1528866180504485379__MailEndCompose"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d">Chandler,<u></u><u></u></span></a></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d">That raises a more meta-question for me, which is “Why should StreamExecutor be in LLVM at all?”<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d">AFAICS, with you approach<u></u><u></u></span></p>
<p><u></u><span style="font-size:10.0pt;font-family:Symbol;color:#1f497d"><span>·<span style="font:7.0pt "Times New Roman"">        
</span></span></span><u></u><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d">It is not a runtime library whose interface the compiler needs to understand.</span></p></div></div></blockquote><div>The original email pretty clearly spells out how it is specifically intended to be a target for the compiler?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-GB" link="blue" vlink="purple"><div><p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d"><u></u><u></u></span></p>
<p><u></u><span style="font-size:10.0pt;font-family:Symbol;color:#1f497d"><span>·<span style="font:7.0pt "Times New Roman"">        
</span></span></span><u></u><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d">It does not depend on any LLVM runtime libraries.<u></u><u></u></span></p>
<p><u></u><span style="font-size:10.0pt;font-family:Symbol;color:#1f497d"><span>·<span style="font:7.0pt "Times New Roman"">        
</span></span></span><u></u><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d">It is expected to be used with out-of-tree plugins.</span></p></div></div></blockquote><div>Note that this doesn't mean there won't be in-tree plugins. It's analogous to how LLVM supports out-of-tree targets.</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-GB" link="blue" vlink="purple"><div><p><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Verdana",sans-serif;color:#1f497d">If I got all of that right, what connection does it have with LLVM that makes having it in the LLVM tree necessary, or an improvement
 over simply having it on github (or whatever your favourite open-source hosting location is)?</span></p></div></div></blockquote><div>If there were nothing compiler related to it, then the argument would be much more tenuous. But I think there is a great deal of compiler relevance here.</div></div></div>