From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934543AbeDXNfQ (ORCPT ); Tue, 24 Apr 2018 09:35:16 -0400 Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:53288 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934343AbeDXNfJ (ORCPT ); Tue, 24 Apr 2018 09:35:09 -0400 Date: Tue, 24 Apr 2018 14:35:27 +0100 From: Will Deacon To: "Jason A. Donenfeld" Cc: linux-arm-kernel@lists.infradead.org, LKML , Ard Biesheuvel , mark.rutland@arm.com Subject: Re: [PATCH] arm64: support __int128 with clang Message-ID: <20180424133527.GB24599@arm.com> References: <20171223004323.1986-1-Jason@zx2c4.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Apr 15, 2018 at 06:20:11PM +0200, Jason A. Donenfeld wrote: > Would you review/merge this when you have a chance? No real objection from me, but does the arm64 kernel actually build with clang? Will > On Sat, Dec 23, 2017 at 1:43 AM, Jason A. Donenfeld wrote: > > Commit fb8722735f50 ("arm64: support __int128 on gcc 5+") added support > > for arm64 __int128 with gcc with a version-conditional, but neglected to > > enable this for clang, which in fact appears to support aarch64 __int128. > > This commit therefore enables it if the compiler is clang, using the > > same type of makefile conditional used elsewhere in the tree. > > > > Signed-off-by: Jason A. Donenfeld > > --- > > arch/arm64/Makefile | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile > > index b481b4a7c011..16c2e8b58546 100644 > > --- a/arch/arm64/Makefile > > +++ b/arch/arm64/Makefile > > @@ -57,7 +57,11 @@ KBUILD_AFLAGS += $(lseinstr) $(brokengasinst) > > KBUILD_CFLAGS += $(call cc-option,-mabi=lp64) > > KBUILD_AFLAGS += $(call cc-option,-mabi=lp64) > > > > +ifeq ($(cc-name),clang) > > +KBUILD_CFLAGS += -DCONFIG_ARCH_SUPPORTS_INT128 > > +else > > KBUILD_CFLAGS += $(call cc-ifversion, -ge, 0500, -DCONFIG_ARCH_SUPPORTS_INT128) > > +endif > > > > ifeq ($(CONFIG_CPU_BIG_ENDIAN), y) > > KBUILD_CPPFLAGS += -mbig-endian > > -- > > 2.15.1 > >