From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3C4BB193 for ; Tue, 8 Nov 2022 18:30:42 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 69817C433C1; Tue, 8 Nov 2022 18:30:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1667932242; bh=0Ilpd65+BqZHkJQ6ZzbRrBM6rJYVbLuq+YBsux3JXtU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=pV+UF3UaA6L7a+E88bOAIYaofBJsNItjRIIp3Jlu2QNTC3apAw8yYtAk+CVMTfgm5 rz0hygtGXgPBOAoF4MHtAuwdzOfIB0vXZAqJuzLsY/gZpH89buSqCV2iVsFlUSLWlm zxEgViHEw+iFEVPiVmw5K9HJjmCfsj3S1fmT1RYmrNfe9R4EgFFSboeR/hsEFBnvHj KUJjN23BnQNWUe9p2Y7n9sEqrx5N+htE8lNqd+OO8m4NSir4tKZxDUS/pZ7Mv9dP48 85XsYet31gQhw49YZlx4eaXtlDURRhZntRbD7MozZtqekekKjIEY7v5TZvNcy7k6k5 CUY/yfbKcuWUA== Date: Tue, 8 Nov 2022 11:30:39 -0700 From: Nathan Chancellor To: Russell King , Nick Desaulniers Cc: Arnd Bergmann , Ard Biesheuvel , Masahiro Yamada , Linus Walleij , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev Subject: Re: [PATCH v4 2/4] ARM: use .arch directives instead of assembler command line flags Message-ID: References: <20221014201354.3190007-1-ndesaulniers@google.com> <20221014201354.3190007-3-ndesaulniers@google.com> Precedence: bulk X-Mailing-List: llvm@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20221014201354.3190007-3-ndesaulniers@google.com> Hi Russell, On Fri, Oct 14, 2022 at 01:13:52PM -0700, Nick Desaulniers wrote: > Similar to commit a6c30873ee4a ("ARM: 8989/1: use .fpu assembler > directives instead of assembler arguments"). > > GCC and GNU binutils support setting the "sub arch" via -march=, > -Wa,-march, target function attribute, and .arch assembler directive. > > Clang was missing support for -Wa,-march=, but this was implemented in > clang-13. > > The behavior of both GCC and Clang is to > prefer -Wa,-march= over -march= for assembler and assembler-with-cpp > sources, but Clang will warn about the -march= being unused. > > clang: warning: argument unused during compilation: '-march=armv6k' > [-Wunused-command-line-argument] > > Since most assembler is non-conditionally assembled with one sub arch > (modulo arch/arm/delay-loop.S which conditionally is assembled as armv4 > based on CONFIG_ARCH_RPC, and arch/arm/mach-at91/pm-suspend.S which is > conditionally assembled as armv7-a based on CONFIG_CPU_V7), prefer the > .arch assembler directive. > > Add a few more instances found in compile testing as found by Arnd and > Nathan. > > Link: https://github.com/llvm/llvm-project/commit/1d51c699b9e2ebc5bcfdbe85c74cc871426333d4 > Link: https://bugs.llvm.org/show_bug.cgi?id=48894 > Link: https://github.com/ClangBuiltLinux/linux/issues/1195 > Link: https://github.com/ClangBuiltLinux/linux/issues/1315 > Suggested-by: Arnd Bergmann > Suggested-by: Nathan Chancellor > Signed-off-by: Arnd Bergmann > Signed-off-by: Nick Desaulniers > --- > Changes v3 -> v4: > * Add .arch armv7-a to arch/arm/mach-tegra/sleep.S as per Nathan. > https://github.com/ClangBuiltLinux/linux/issues/1315#issuecomment-1255646893 > * Add Nathan's SB tag. I noticed that this series appears to be partially applied in next-20221108: 59247fe730db ARM: 9265/1: pass -march= only to compiler bc21212c5564 ARM: 9264/1: only use -mtp=cp15 for the compiler 5aa4860eb50f ARM: 9262/1: remove lazy evaluation in Makefile This patch (submitted as 9263/1) is needed by 9265/1; without it, builds are going to break: https://builds.tuxbuild.com/2HGSpQMAKxJuaMAz2ZZc1UgUvvu/build.log Was there a problem with applying this patch or just an oversight? It would be great to get this whole series applied so that we can turn -Wunused-command-line-argument into a hard error. Cheers, Nathan From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0A05AC433FE for ; Tue, 8 Nov 2022 18:31:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=GNtGMOQWEVP034Zjv/bwG7WJpj5+tf8Fbm4rvQhIITY=; b=Mf8KVc8nUKvsto Hiqdz7BjmZ7cccr0lN/LaUVIeZFUtAWqOvyWQ96XZOonI2AaN7Ia+rXVz5OT2wxxJWvCX8MgJ0ykL 1GiqHy0nqWT/j65/YyvIUKwyLc87mUO43ZhyrxDz3H9HxMfq9Bc/nYeutNaw+lXFhvPgsunnYz3rS OOEOztOvoPt8N75DI6d0Ewx5I9NU90NQzU5JP1GZHiZzujEloPWZqA0uRQihXubaot0K2nULJ+UOE 82kda5XCQ0PxVAINBvxeIyEUhH1KFWpQdkd7aKyHXw8Uj/58X/nI/jYLjRUXSAdCwls1a8ymuboj0 qLfU+qeIoziviwkuRLHg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1osTN3-007Uoh-A8; Tue, 08 Nov 2022 18:30:49 +0000 Received: from ams.source.kernel.org ([145.40.68.75]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1osTMy-007UnI-Ru for linux-arm-kernel@lists.infradead.org; Tue, 08 Nov 2022 18:30:46 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 7D86FB81BFF; Tue, 8 Nov 2022 18:30:43 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 69817C433C1; Tue, 8 Nov 2022 18:30:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1667932242; bh=0Ilpd65+BqZHkJQ6ZzbRrBM6rJYVbLuq+YBsux3JXtU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=pV+UF3UaA6L7a+E88bOAIYaofBJsNItjRIIp3Jlu2QNTC3apAw8yYtAk+CVMTfgm5 rz0hygtGXgPBOAoF4MHtAuwdzOfIB0vXZAqJuzLsY/gZpH89buSqCV2iVsFlUSLWlm zxEgViHEw+iFEVPiVmw5K9HJjmCfsj3S1fmT1RYmrNfe9R4EgFFSboeR/hsEFBnvHj KUJjN23BnQNWUe9p2Y7n9sEqrx5N+htE8lNqd+OO8m4NSir4tKZxDUS/pZ7Mv9dP48 85XsYet31gQhw49YZlx4eaXtlDURRhZntRbD7MozZtqekekKjIEY7v5TZvNcy7k6k5 CUY/yfbKcuWUA== Date: Tue, 8 Nov 2022 11:30:39 -0700 From: Nathan Chancellor To: Russell King , Nick Desaulniers Cc: Arnd Bergmann , Ard Biesheuvel , Masahiro Yamada , Linus Walleij , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev Subject: Re: [PATCH v4 2/4] ARM: use .arch directives instead of assembler command line flags Message-ID: References: <20221014201354.3190007-1-ndesaulniers@google.com> <20221014201354.3190007-3-ndesaulniers@google.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20221014201354.3190007-3-ndesaulniers@google.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221108_103045_209608_67CF853C X-CRM114-Status: GOOD ( 21.84 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi Russell, On Fri, Oct 14, 2022 at 01:13:52PM -0700, Nick Desaulniers wrote: > Similar to commit a6c30873ee4a ("ARM: 8989/1: use .fpu assembler > directives instead of assembler arguments"). > > GCC and GNU binutils support setting the "sub arch" via -march=, > -Wa,-march, target function attribute, and .arch assembler directive. > > Clang was missing support for -Wa,-march=, but this was implemented in > clang-13. > > The behavior of both GCC and Clang is to > prefer -Wa,-march= over -march= for assembler and assembler-with-cpp > sources, but Clang will warn about the -march= being unused. > > clang: warning: argument unused during compilation: '-march=armv6k' > [-Wunused-command-line-argument] > > Since most assembler is non-conditionally assembled with one sub arch > (modulo arch/arm/delay-loop.S which conditionally is assembled as armv4 > based on CONFIG_ARCH_RPC, and arch/arm/mach-at91/pm-suspend.S which is > conditionally assembled as armv7-a based on CONFIG_CPU_V7), prefer the > .arch assembler directive. > > Add a few more instances found in compile testing as found by Arnd and > Nathan. > > Link: https://github.com/llvm/llvm-project/commit/1d51c699b9e2ebc5bcfdbe85c74cc871426333d4 > Link: https://bugs.llvm.org/show_bug.cgi?id=48894 > Link: https://github.com/ClangBuiltLinux/linux/issues/1195 > Link: https://github.com/ClangBuiltLinux/linux/issues/1315 > Suggested-by: Arnd Bergmann > Suggested-by: Nathan Chancellor > Signed-off-by: Arnd Bergmann > Signed-off-by: Nick Desaulniers > --- > Changes v3 -> v4: > * Add .arch armv7-a to arch/arm/mach-tegra/sleep.S as per Nathan. > https://github.com/ClangBuiltLinux/linux/issues/1315#issuecomment-1255646893 > * Add Nathan's SB tag. I noticed that this series appears to be partially applied in next-20221108: 59247fe730db ARM: 9265/1: pass -march= only to compiler bc21212c5564 ARM: 9264/1: only use -mtp=cp15 for the compiler 5aa4860eb50f ARM: 9262/1: remove lazy evaluation in Makefile This patch (submitted as 9263/1) is needed by 9265/1; without it, builds are going to break: https://builds.tuxbuild.com/2HGSpQMAKxJuaMAz2ZZc1UgUvvu/build.log Was there a problem with applying this patch or just an oversight? It would be great to get this whole series applied so that we can turn -Wunused-command-line-argument into a hard error. Cheers, Nathan _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel