From owner-freebsd-current@FreeBSD.ORG Sun Feb 16 20:16:34 2014 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6AF38881; Sun, 16 Feb 2014 20:16:34 +0000 (UTC) Received: from btw.pki2.com (btw.pki2.com [IPv6:2001:470:a:6fd::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0E7D51AD1; Sun, 16 Feb 2014 20:16:33 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by btw.pki2.com (8.14.8/8.14.8) with ESMTP id s1GKGNNC045981; Sun, 16 Feb 2014 12:16:23 -0800 (PST) (envelope-from freebsd@penx.com) Subject: Re: HEADS UP: Updated llvm/clang to 3.4 in r261991 From: Dennis Glatting To: Dimitry Andric In-Reply-To: <6FA0FC8C-ABAA-433A-94AF-43AF84AD2AE4@FreeBSD.org> References: <6FA0FC8C-ABAA-433A-94AF-43AF84AD2AE4@FreeBSD.org> Content-Type: text/plain; charset="us-ascii" Date: Sun, 16 Feb 2014 12:16:22 -0800 Message-ID: <1392581782.45152.6.camel@btw.pki2.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit X-SoftwareMunitions-MailScanner-Information: Dennis Glatting X-SoftwareMunitions-MailScanner-ID: s1GKGNNC045981 X-SoftwareMunitions-MailScanner: Found to be clean X-MailScanner-From: freebsd@penx.com Cc: FreeBSD Current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Feb 2014 20:16:34 -0000 On Sun, 2014-02-16 at 21:06 +0100, Dimitry Andric wrote: > Hi, > > 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! > Is OpenMP supported in this version? Clang 3.4 from ports barfs: btw> /usr/local/bin/clang34 -fopenmp /tmp/foo.c clang: warning: argument unused during compilation: '-fopenmp' Ditto the installed version of 3.3 under 10: btw> clang -fopenmp /tmp/foo.c clang: warning: argument unused during compilation: '-fopenmp' > -Dimitry >