LLVM 3.2 Release!

LLVM Fans, LLVM 3.2 is done!! Get it here:
http://llvm.org/releases/

or read about it:
http://llvm.org/releases/3.2/docs/ReleaseNotes.html

Despite only it being a bit over 6 months of development since 3.1, LLVM 3.2
is a huge leap, delivering a wide range of improvements and new features.
Clang now includes industry-leading C++'11 support, improved diagnostics, C11
and Objective-C improvements (including "ObjC literals" support), and the
Clang static analyzer now has the ability to do inter-procedural (cross-
function) analysis along with improved Objective-C support.

LLVM 3.2 now includes an (early in development) auto-vectorizer, and includes
tuning support for several new ARM CPU variants, code generation support for
the NVIDIA PTX virtual ISA, a significantly improved SROA pass, improvements
in AVX2 support in X86 CPUs, major leaps in the MIPS backend (including
integrated assembler and disassembler support), dramatic improvements to ELF
PowerPC64 support, LLDB is now a rock solid debugger on Mac OS X, and an
uncountable number of bug fixes and other minor improvements has landed in
this release. For more details, please see the full release notes linked
above.

This release would not be possible without our volunteer release team! Thanks
to our amazing new release manager Paweł Wodnicki, as well as Nikola
Smiljanic, Nakamura Takumi, Duncan Sands and Bill Wendling for their work to
qualify and shepherd the release.

If you have questions or comments about this release, please contact the
LLVMdev mailing list! Onward to LLVM 3.3!

-Chris

LLVM 3.1 Release Announcement:
http://lists.cs.uiuc.edu/pipermail/llvm-announce/2012-May/000041.html

Hurray for 3.2!

We have to keep our 150,000 lines of C++ working on both clang and gcc, so feature parity is important to us.

Any idea when <initializer_list> will be implemented?

Also: it would be very helpful if there were a web page where one could follow important changes checked into the trunk.

Spreadsheet attached.

Thanks

Dave

C+11 clang vs gcc.xls (58.5 KB)

I'm confused.

<initializer_list> is checked into the libc++ svn repo.
Initial checkin was 2010-05-11; last bug fix 2011-11-29

It's been shipping (as part of Xcode) for a while.

-- Marshall

Marshall Clow Idio Software <mailto:mclow.lists@gmail.com>

A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).
        -- Yu Suzuki

Hi Dave,

Hurray for 3.2!

We have to keep our 150,000 lines of C++ working on both clang and gcc, so feature parity is important to us.

Any idea when <initializer_list> will be implemented?

<initializer_list> is a header that should be in your C++ standard library. Clang is a C++ compiler, not a library.

On OS X, libstd++ (the C++ standard library that’s shipped with gcc) is frozen at version 4.2 and does not support newer headers. There is an alternative C++ standard library called libc++ that you can use if you target OS X 10.7 or newer.

On Linux, you can try using either libc++ or a current libstdc++, but the latter need patches to compile with clang in c++11 mode (see the patches linked from http://clang.llvm.org/cxx_status.html) while the former says the linux port is “underway” (http://libcxx.llvm.org/).

Nico