Clang: now available from a SVN server near you!

Roman Divacky rdivacky at FreeBSD.org
Thu Jun 4 12:39:05 UTC 2009


On Thu, Jun 04, 2009 at 02:35:56PM +0200, Erik Cederstrand wrote:
> Den 04/06/2009 kl. 11.38 skrev Ed Schouten:
> 
> >You can now build your very own version of FreeBSD with Clang  
> >installed
> >as /usr/bin/cc as follows:
> 
> Thanks for your hard work, Ed. This is great news!
> 
> You might want to mention that a few parts are still GCC-compiled due  
> to bugs in Clang ( see http://wiki.freebsd.org/ 
> BuildingFreeBSDWithClang). Also, it's very encouraging that the ports  
> run you did with Erwin 
> (http://lists.cs.uiuc.edu/pipermail/cfe-dev/2009-June/005274.html ) 
> compiles over 7000 ports with Clang.
> 
> I've asked in the Clang list, but I'd like an opinion from FreeBSD  
> folks, too: Clang supports LTO 
> (http://llvm.org/docs/LinkTimeOptimization.html ), which has a potential 
> for performance improvements. It doesn't work  on FreeBSD because the 
> linker we have (in binutils) doesn't know about  the libLTO that LLVM 
> provides. There's a new linker from GNU called  Gold, but as far as I know 
> it's GPLv3 licensed and therefore  undesirable at least to have in base. 
> LLVM provides a linker (http://llvm.org/cmds/llvm-ld.html ) but "it doesn't 
> interact correctly with conventional nm/ar/etc" 
> (http://lists.cs.uiuc.edu/pipermail/cfe-dev/2009-June/005296.html ). 
> There's the ELF toolchain project (elftoolchain.sourceforge.net/)  but a 
> BSD-licensed ld hasn't been developed yet.
> 
> What would be the best way to get LTO to work on FreeBSD?

you could use llvm-ld (see the wiki for instructions how to do it). there's also some 
effort to make gnu ld usable with llvm LTO and I guess the patch could be backported 
to our ld. I guess


More information about the freebsd-hackers mailing list