Importing clang/LLVM into FreeBSD HEAD
nslay at comcast.net
Tue Jun 1 07:58:36 UTC 2010
Roman Divacky wrote:
> I would like to propose to integrate clang/LLVM into FreeBSD HEAD
> in the near future (days, not weeks).
> clang/LLVM is a C/C++/ObjC compiler (framework) which aims to possibly
> replace gcc. It is BSDL-like licensed. The sources are ~45MB (the
> svn checkout is 97MB). Clang/LLVM is written in C++.
> Clang can compile all of FreeBSD on i386/amd64 including world and booting
> kernel. Other architectures that are close to working are MIPS, PowerPC
> and ARM. We have a branch (clangbsd-import) that just includes clang/LLVM
> sources and the build infrastructure and this is what we aim to integrate
> at first.
> The import of clang/LLVM was discussed at the toolchain summit May 10th
> but I would like to hear your opinion. I got approval from core@ on
> importing it.
> So please share your support or resistance to the idea of importing clang.
> Roman Divacky
I've been waiting for this day since the first talk of PCC. I've
watched ClangBSD on the FreeBSD wiki since it first appeared there and
I'm delightfully surprised to see that it has progressed to this stage
so quickly (what, has it only been 6 months or a year?). Clang also
seems to have made a lot of progress (and quickly!) on their C++
support. I'm all for the import. I think you'll receive a wider user
base of ClangBSD (including me) if you import it. Actually, the day
it's imported and reported stable enough, I'll almost certainly sync to
CURRENT Otherwise, there is no incentive for me since there isn't
anything in CURRENT I'm curious about (yet).
The only thing that concerns me, as was discussed extensively in your
previous thread, are bugs in a relatively new compiler. Robert Watson's
post is especially disturbing as he spent 4-6 hours determining that a
problem was caused by a bug in the compiler. That's a lot of time
spent. However, this will help mature LLVM/Clang which will benefit
FreeBSD anyways. If LLVM/Clang is cutting-edge compiler technology, I'd
have to agree that this will be the future anyways. Besides, LLVM/Clang
offers all sorts of interesting developer tools and Clang itself appears
to generate more useful and informative error messages and warnings than
GCC ever did (with color too!). I think that alone is worth it.
More information about the freebsd-current