<div class="gmail_quote">On Fri Nov 28 2014 at 23:54:03 Fredrik Ehnbom <<a href="mailto:quarnster@gmail.com">quarnster@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">While I've been able to build gccgo and llgo both, I cannot use them as 
libgo doesn't build on darwin 
(<a href="https://code.google.com/p/gofrontend/issues/detail?id=18" target="_blank">https://code.google.com/p/gofrontend/issues/detail?id=18</a>).<br><br>Is there any document/wiki/email describing the overlap(s) between gc, gccgo and llgo?</div></blockquote><div><br></div><div>No, not really - not one that includes llgo anyway. Obviously Darwin support is lacking and that's a sore point for gccgo as well; it needs to be fixed for both. I'd also like to revive PNaCl support, and that's likely going to be non-trivial.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Are the latter two affected by the <span><span> <a href="http://golang.org/s/dev.cc" target="_blank">golang.org/s/dev.cc</a> </span></span>effort?<br></div></blockquote><div><br></div><div>Peter may have more insight, but AFAIK dev.cc is just to do with gc at this stage. I'd like to see more of gc's runtime borrowed in libgo. I think there's a fair bit of work to do there - I imagine mostly in the GC.</div><div><br></div><div>Things like hash maps and channels don't need to be implemented twice. At the moment the runtime type descriptors have different formats, and hashing is done differently; I didn't see any good reason for why that is the case, though.</div><div><br></div><div>Cheers,</div><div>Andrew</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">/f<br><br>Den tisdagen den 25:e november 2014 kl. 11:40:50 UTC+1 skrev Andrew Wilkins:<blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"></div></blockquote></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote">On Tue Nov 25 2014 at 18:30:08 Carlo Alberto Ferraris <<a>ca...@strayorange.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Just curious: are you considering the possibility of enabling LTO across user and runtime code?<br>
Since AFAIK the product of go build is almost always a statically-linked executable, I guess it would make sense (when doing an optimised build) to feed the runtime to the linker in IR form and let it run LTO.<br></blockquote><div><br></div><div>Yes, I'd like this to be an option. See:</div><div><div>  <a href="https://groups.google.com/forum/#!topic/llgo-dev/NaO36voIcMI" target="_blank">https://groups.google.com/<u></u>forum/#!topic/llgo-dev/<u></u>NaO36voIcMI</a><br></div><div>  <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-July/074540.html" target="_blank">http://lists.cs.uiuc.edu/<u></u>pipermail/llvmdev/2014-July/<u></u>074540.html</a></div></div><div><br></div><div>I don't think I ever recorded any benchmarking results from my experiment.<br></div><div><br></div><div>Cheers,</div><div>Andrew</div><div> </div></div></blockquote></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Carlo</blockquote></div></blockquote></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
> On Nov 20, 2014, at 06:53, Peter Collingbourne <<a>pe...@pcc.me.uk</a>> wrote:<br>
><br>
> Hi all,<br>
><br>
> I'd like to propose the contribution of a Go frontend subproject to the LLVM<br>
> project, based on the existing llgo project at <a href="https://github.com/go-llvm/llgo" target="_blank">https://github.com/go-llvm/<u></u>llg<u></u>o</a> .<br>
> As with the previous contribution of the Go bindings, I have obtained<br>
> permission from all llgo contributors whose code is part of this contribution,<br>
> to contribute their changes to the LLVM project and relicense their changes<br>
> under the LLVM license. I am also willing to be the code owner for the<br>
> llgo subproject.<br>
><br>
> The frontend would live in the LLVM svn repository and if checked out into<br>
> tools/llgo would build as part of the regular LLVM build (with CMake only). We<br>
> would be keeping llgo compatible with top-of-tree LLVM, although I imagine<br>
> this would be less burdensome than the other subprojects as llgo is written<br>
> in Go and depends on the Go bindings previously contributed to LLVM.<br>
><br>
> llgo depends on certain third-party components, namely a copy of the Go<br>
> standard library (libgo), a Go program analysis library (go.tools) and two<br>
> library dependencies of the standard library (libbacktrace and libffi). These<br>
> would be mirrored into the llgo repository under a third_party directory. They<br>
> would retain their original licenses, which are BSD and GPLv3 with Runtime<br>
> Library Exception (the latter only applies to a handful of header files;<br>
> eventually we would seek to replace these).<br>
><br>
> As a first step, I have published:<br>
><br>
> <a href="http://reviews.llvm.org/D6327" target="_blank">http://reviews.llvm.org/D6327</a><br>
><br>
> with the initial code contribution. The mirrored third-party sources will be<br>
> added later, as the diff would be too large to review. If there is consensus<br>
> in the community, the next step I propose to take is to create the subproject<br>
> in svn and check in the initial version of the code.<br>
><br>
> Any comments on this contribution are appreciated.<br>
><br>
> Thanks,<br>
> --<br>
> Peter<br>
> ______________________________<u></u><u></u>_________________<br>
> LLVM Developers mailing list<br></blockquote></div></blockquote></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
> <a>LLV...@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a></blockquote></div></blockquote></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailm<u></u>an/listinfo/llvmdev</a><br>
<br>
--<br>
You received this message because you are subscribed to the Google Groups "llgo-dev" group.<br></blockquote></div></blockquote></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
To unsubscribe from this group and stop receiving emails from it, send an email to <a>llgo-dev+u...@<u></u>googlegro<u></u>ups.com</a>.</blockquote></div></blockquote></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank">https://groups.google.com/d/<u></u>op<u></u>tout</a>.<br>
</blockquote></div></blockquote></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups "llgo-dev" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:llgo-dev+unsubscribe@googlegroups.com" target="_blank">llgo-dev+unsubscribe@googlegroups.com</a>.<br>
For more options, visit <a href="https://groups.google.com/d/optout" target="_blank">https://groups.google.com/d/optout</a>.<br>
</blockquote></div>