[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT PATCHv4 11/43] arch/arm64: Add processor optimization GCC flags for arm64

On 09/07/18 10:17, Wei Chen wrote:
Hi Julien,


-----Original Message-----
From: Julien Grall <julien.grall@xxxxxxx>
Sent: 2018年7月8日 5:59
To: Wei Chen <Wei.Chen@xxxxxxx>; minios-devel@xxxxxxxxxxxxxxxxxxxx;
Cc: Kaly Xin <Kaly.Xin@xxxxxxx>; nd <nd@xxxxxxx>
Subject: Re: [Minios-devel] [UNIKRAFT PATCHv4 11/43] arch/arm64: Add processor
optimization GCC flags for arm64

Hi Wei,

On 07/06/2018 10:03 AM, Wei Chen wrote:
We added serval arm64 CPU models in support list. In this patch,


Oh, thanks again!


we check the GCC version and add optimization GCC flags for
selected processor.

Current supported arm64 CPU models:
native, generic, cortex-a53, cortex-a57, cortex-a72, cortex-a73,
cortex-a55 and cortex-a75.

Signed-off-by: Wei Chen <Wei.Chen@xxxxxxx>
   arch/arm/arm64/Compiler.uk |  6 ++++++
   arch/arm/arm64/Makefile.uk | 43 ++++++++++++++++++++++++++++++++++++++
   2 files changed, 49 insertions(+)
   create mode 100644 arch/arm/arm64/Compiler.uk
   create mode 100644 arch/arm/arm64/Makefile.uk

diff --git a/arch/arm/arm64/Compiler.uk b/arch/arm/arm64/Compiler.uk
new file mode 100644
index 0000000..4572013
--- /dev/null
+++ b/arch/arm/arm64/Compiler.uk
@@ -0,0 +1,6 @@
+# set cross compile
+       CONFIG_CROSS_COMPILE := aarch64-linux-gnu-
diff --git a/arch/arm/arm64/Makefile.uk b/arch/arm/arm64/Makefile.uk
new file mode 100644
index 0000000..f6aeeac
--- /dev/null
+++ b/arch/arm/arm64/Makefile.uk
@@ -0,0 +1,43 @@
+ASFLAGS  += -D__ARM_64__
+CFLAGS   += -D__ARM_64__ -fms-extensions
+CXXFLAGS += -D__ARM_64__ -fms-extensions

I would rather avoid to define yet another macro and re-use __aarch64__
defined by the aarch64 compiler.

It does make sense. But I am not sure if we keep __ARM_64__ here can improve
the compatibility for other libraries. Because for internal libraries we can
__aarch64__ uniformly. But for external libraries, we change them to __aarch64__

If other libraries are using __ARM_64__, then I would say go an fix your libraries :). But I would expect most of them to use what's the compiler provide.


Julien Grall

Minios-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.