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.gr...@arm.com/ 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