<div dir="ltr">Hi Dmitri,<div class="gmail_extra"><br><div class="gmail_quote">2016-02-25 6:34 GMT-05:00 Dmitry Polukhin via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Thu, Feb 25, 2016 at 3:01 AM, Samuel F Antao via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">







<p>OpenMP (Host IR has to be read by the device to determine which declarations have to be emitted and the device binary is embedded in the host binary at link phase through a proper linker script):<br></p>
<p><span>Src -> Host PP -> A</span></p>
<p><span>A    -> HostCompile -> B</span></p>
<p><span>A,B -> DeviceCompile -> C</span></p></div></blockquote></span><div>I think even for some OpenMP targets it might be better to allow using device PP (and corresponding headers) due to target specific macro. For example, some function may have target specific version and host version with #ifdef's on CPU type that allows to have completely different implementation on host and on target.</div></div></div></div></blockquote><div><br></div><div>I agree, the decision of using the host toolchain for a given job should be overloaded for each toolchain and would depend on the target and the offload kind associated. </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">
<p><span>C    -> DeviceAssembler -> D</span></p>
<p><span>E    -> DeviceLinker -> F</span></p></div></blockquote></span><div>I suspect that you meant D instead of E here, isn't it?</div></div></div></div></blockquote><div><br></div><div>Ups, your are totally correct! Thanks for detecting the issue.</div><div><br></div><div>Thanks again,</div><div>Samuel</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
<br></blockquote></div><br></div></div>