From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH 02/34] xen: clang: Disable built-in assembler Date: Wed, 26 Mar 2014 15:08:48 +0000 Message-ID: <5332ED80.5070305@linaro.org> References: <1395766541-23979-1-git-send-email-julien.grall@linaro.org> <1395766541-23979-3-git-send-email-julien.grall@linaro.org> <5332CDE00200007800002490@nat28.tlf.novell.com> <20140326131625.GB7885@deinos.phlegethon.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1WSpRk-0006gb-TY for xen-devel@lists.xenproject.org; Wed, 26 Mar 2014 15:08:53 +0000 Received: by mail-bk0-f41.google.com with SMTP id d7so598919bkh.28 for ; Wed, 26 Mar 2014 08:08:50 -0700 (PDT) In-Reply-To: <20140326131625.GB7885@deinos.phlegethon.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Tim Deegan Cc: xen-devel@lists.xenproject.org, Keir Fraser , stefano.stabellini@citrix.com, ian.campbell@citrix.com, Jan Beulich List-Id: xen-devel@lists.xenproject.org Hi Tim, On 03/26/2014 01:16 PM, Tim Deegan wrote: > At 11:53 +0000 on 26 Mar (1395831232), Jan Beulich wrote: >>>>> On 25.03.14 at 17:55, wrote: >>> --- a/xen/Rules.mk >>> +++ b/xen/Rules.mk >>> @@ -74,6 +74,7 @@ AFLAGS-y += -D__ASSEMBLY__ -include >>> $(BASEDIR)/include/xen/config >>> >>> # Clang's built-in assembler can't handle .code16/.code32/.code64 yet >>> AFLAGS-$(clang) += -no-integrated-as >>> +CFLAGS-$(clang) += -no-integrated-as >> >> Iirc Tim had found and worked around other built-in assembler issues >> in the past, so if this is to be done unconditionally I wonder whether >> we shouldn't then drop those workarounds. > > I would prefer, wherever possible, to make things work with the clang > assembler rather than rely on the binutils one forever. The clang integrated assembler is too powerful for some part of Xen :). Every inline assembly code is parsing by the assembler to check the syntax. This will result to failure to generate asm-offsets.c because of the -> in the code (see arch/arm/arm32/asm-offsets.c: DEFINE/BLANK macros). Indeed, the -> is not a valid assembler syntax. > BTW, I haven't looked at any of this series in detail yet but I'm > planning to go through it all tomorrow. There still have few issues to build the tools and Xen x86_64 with clang 3.5. I also would like to see if we can re-enable some warnings (see Config.mk) with newer version of clang. Regards, -- Julien Grall