[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/5] aarch64, common: improve clang and llvm support
- To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- From: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
- Date: Fri, 29 Nov 2024 01:49:09 +0000
- Accept-language: en-US
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hs4cLe8ALMoWcOMbuIwcvz7KSeSIg6dUhmOy+zBqkAM=; b=cRDEIsuNcz5tWIEG3R6UGJqVjlCXJFbJhq4Zjc5h1WtoGXYGTrovq3ycB9t62Hf1pKfyRRJoiR2DbuQxmvcUmQFIuWEabHIWL5QeyQFpBRRZYjwDx67W4B3Uvke3g2x6yZ8Krdc934PGgEb8ef541gjxIL2tQhZ90DfY3HdM3ZjKQHYkhYckXNHQmLvELvp9vQYyCwkeyTJ2dSLRrVpXLpc1nZ+BWTQ77m2jZghhZNrBP0Xtd4uRcJ78NIx+QHEGCqzqZFM/2b+TWSGQZb30aXDkuAGsNQ2pety6FtiK88H8nU6TOKWGnvkK1zVt+M0Ll4zjNJwhNoa9ZWYXISsJBQ==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Z34GNJFGFnNbXXAPMvtbQb0evKpwzEyxMo392sjhcHvEpQC+6cXFbqJZwZ/lxtKbR8T6P5lmI7ZZy4eBjnb63GWGQbPv6LsE4QeuBxNzUpeAaxd3kXcwH7UtLamD62DLqNnClTtHkTGw5EpgYf7M/OW5XzHaWECnd5pw/hEuG14XlzBAM4gXH6s9MhPyL6ZjQ4XnakiiYqjlBm7YAibUDVV7wVs+yWin+wjRg/6nzF+kWhllUL20Xmi6bvYEWfqexPTWrq6PxWYA72ZQEix5ClcqMBiI5cpeVn1++320KgCJUo1KqvS9eYtA+VUsfqTRwiuRO9XnvfQFMal/FG9lag==
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
- Cc: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>
- Delivery-date: Fri, 29 Nov 2024 01:49:28 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Thread-index: AQHbQgDhJYzO1RzhGUuu6Awok63JvQ==
- Thread-topic: [PATCH 0/5] aarch64, common: improve clang and llvm support
This patch series addresses two main issues:
1. Some errors when using clang for aarch64 build
2. Unability to use clang for cross-compilation
While first problem has straightforward fix: add -march argument and
allow to use FP registers for vfg.c, second one is much trickier. I am
aware of the earlier attempts (like [1]), so I decided to use
different approach. Bscailly, I chose to use LLVM tooling as an
option. As LLVM tooling supports cross-compilation inherently, we
don't need to use CROSS_COMPILE varialbe at all.
make XEN_TARGET_ARCH=arm64 clang=y llvm=y
Shoud work on all host platforms, although I tested this only on x86.
[1]
https://patchwork.kernel.org/project/xen-devel/cover/20190327184531.30986-1-julien.grall@xxxxxxx/
Volodymyr Babchuk (5):
arm: bugframe: emit msg offset only if msg is present
build: add possibility to use LLVM tools
build: arm64: provide -target and -march if using clang
xen: build: add support for CFLAGS_REMOVE variable
xen: arm64: remove -mgeneral-regs-only for vfp.c
config/GNUCommon.mk | 16 ++++++++++++++++
config/Linux.mk | 4 ++++
config/StdGNU.mk | 18 +-----------------
config/arm64.mk | 4 ++++
config/llvm.mk | 17 +++++++++++++++++
xen/Rules.mk | 2 +-
xen/arch/arm/arm64/Makefile | 2 ++
xen/arch/arm/include/asm/bug.h | 4 ++++
8 files changed, 49 insertions(+), 18 deletions(-)
create mode 100644 config/GNUCommon.mk
create mode 100644 config/llvm.mk
--
2.47.0
|