[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 3/5] build: arm64: provide -target and -march if using clang
Hi Jan, On 02/12/2024 07:52, Jan Beulich wrote: On 30.11.2024 18:15, Julien Grall wrote:On 29/11/2024 22:12, Volodymyr Babchuk wrote:Jan Beulich <jbeulich@xxxxxxxx> writes:On 29.11.2024 02:49, Volodymyr Babchuk wrote:--- a/config/arm64.mk +++ b/config/arm64.mk @@ -5,6 +5,10 @@ CONFIG_XEN_INSTALL_SUFFIX :=CFLAGS += #-marm -march= -mcpu= etc +ifeq ($(clang),y)+CFLAGS += -target aarch64 -march=armv8-a +endifWhy is this dependent on (just?) $(clang), not (also?) $(llvm)?Because this parameter is handled by clang only. There is no harm in providing it explicitly. When building on arm64, value of this parameter will match the default value for the platform. When building on x86, we need to tell clang that it should generate arm64 code anyways. There is no reason in trying to make ARM build with x86 instruction set.Also this affects both toolstack builds and hypervisor. Is applying -march like this actually appropriate for the toolstack?This is a good question. I can't see why this can't be appropriate for toolstack. I.e. what bad can happen when building the toolstack.In the future, we may want to build the tools for Armv8-M. So I think the -march should also applies for the toolstack.Perhaps I don't know enough of the Arm world, but: Wouldn't it be possible to build a tool stack suitable for a wide range for Arm64 flavors, while requiring more targeted hypervisor binaries? Good question. There are some commonnality between ARMv8-M and ARMv8-R but I am not sure whether it means we could use -march=armv8-a build and run on ARMv8-M. Adding Ayan and Luca. Cheers, -- Julien Grall
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |