I have just upgraded our copy of llvm/clang to 3.4 release, in r261991.
This version supports all of the features in the current working draft
of the upcoming C++ standard, provisionally named C++1y.

The code generator's performance is greatly increased, and the loop
auto-vectorizer is now enabled at -Os and -O2 in addition to -O3.  The
PowerPC backend has made several major improvements to code generation
quality and compile time, and the X86, SPARC, ARM32, Aarch64 and SystemZ
backends have all seen major feature work.

Release notes for llvm and clang can be found here:

Note that building lldb (using WITH_LLDB) will not work at this point,
since our lldb snapshot was locally modified to be able to work with the
old llvm 3.3 API.  Ed Maste will most likely fix this very soon (and
maybe import a new snapshot, I hope :-).

Another important aspect for end-users and ports maintainers is the new
compiler flag handling in clang 3.4.  It has become more strict, in the
sense that it will now error out on flags it does not recognize, in
particular most gcc-specific optimization fine-tuning flags.

Some ports which blindly use such gcc-specific flags will therefore be
broken, but these are usually very easy to fix.  During the exp-run
which was done with this new version of clang, several ports with the
highest number of dependent ports (open-motif, libtheora, boost-libs,
etc) have already been handled, but more work still needs to be done.

Last but not least, I hope we can now start using clang for more of our
existing architectures, like powerpc, mips, and possibly even new ones
like arm64.  Enjoy!


Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to