[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Minios-devel] [UNIKRAFT PATCHv5 04/46] arch/x86: Rename MARCH_* of x86_64 to MARCH_X86_64_*
From: Wei Chen <Wei.Chen@xxxxxxx> Add architecture name to the processor macros. This will avoid the name conflict of different architectures. For instance, both arm64 and x86_64 have "generic" option for select processors. If we don't add architecture name to the macros. Both of these "generic" option will generate a macro: MARCH_GENERIC. In this case, the build scripts can't distinguish between Arm64/generic and x86_64/generic Signed-off-by: Wei Chen <Wei.Chen@xxxxxxx> Reviewed-by: Simon Kuenzer <simon.kuenzer@xxxxxxxxx> --- Config.uk | 2 +- arch/x86/x86_64/Config.uk | 34 ++++++++++----------- arch/x86/x86_64/Makefile.uk | 60 ++++++++++++++++++------------------- 3 files changed, 48 insertions(+), 48 deletions(-) diff --git a/Config.uk b/Config.uk index 21cec9b..1bca2b0 100644 --- a/Config.uk +++ b/Config.uk @@ -65,7 +65,7 @@ config OPTIMIZE_SIZE endchoice comment "Hint: Specify a CPU type to get most benefits from performance optimization" - depends on OPTIMIZE_PERF && MARCH_GENERIC + depends on OPTIMIZE_PERF && MARCH_X86_64_GENERIC config OPTIMIZE_DEADELIM bool "Drop unused functions and data" diff --git a/arch/x86/x86_64/Config.uk b/arch/x86/x86_64/Config.uk index ca49eed..b18566b 100644 --- a/arch/x86/x86_64/Config.uk +++ b/arch/x86/x86_64/Config.uk @@ -1,88 +1,88 @@ choice prompt "Processor Optimization" - default MARCH_GENERIC + default MARCH_X86_64_GENERIC help Optimize the code for selected target processor Generic x86_64 does not enable any additional CPU features (e.g., SSE, 3DNow!) and produces highly protable code for x86. -config MARCH_NATIVE +config MARCH_X86_64_NATIVE bool "Auto-detect host CPU" help Optimize compilation to host CPU Please note that this option will fail in case of cross-compilation -config MARCH_GENERIC +config MARCH_X86_64_GENERIC bool "Generic 64-bit" help Compile for 64-bit compatible x86 CPUs -config MARCH_NOCONA +config MARCH_X86_64_NOCONA bool "Intel Pentium 4/Xeon (Nocona)" help Improved version of Intel Pentium 4 CPU with 64-bit extensions, MMX, SSE, SSE2 and SSE3 instruction set support. -config MARCH_CORE2 +config MARCH_X86_64_CORE2 bool "Intel Core 2/Xeon" help Intel Core 2 CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3 and SSSE3 instruction set support. -config MARCH_COREI7 +config MARCH_X86_64_COREI7 bool "Intel Core i7/Xeon" help Intel Core i7 CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 instruction set support. -config MARCH_COREI7AVX +config MARCH_X86_64_COREI7AVX bool "Intel Core i7/Xeon +AVX" help Intel Core i7 CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AES and PCLMUL instruction set support. -config MARCH_COREI7AVXI +config MARCH_X86_64_COREI7AVXI bool "Intel Core/Xeon +AVX +RDRND" help Intel Core CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AES, PCLMUL, FSGSBASE, RDRND and F16C instruction set support. -config MARCH_ATOM +config MARCH_X86_64_ATOM bool "Intel Atom 64-bit" help Intel Atom CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3 and SSSE3 instruction set support. -config MARCH_K8 +config MARCH_X86_64_K8 bool "AMD Athlon64/Opteron" help Processors based on the AMD K8 core with x86-64 instruction set support, including the AMD Opteron, Athlon 64, and Athlon 64 FX processors. (This supersets MMX, SSE, SSE2, 3DNow!, enhanced 3DNow! and 64-bit instruction set extensions.) -config MARCH_K8SSE3 +config MARCH_X86_64_K8SSE3 bool "AMD Athlon64/Opteron +SSE3" help Improved versions of AMD K8 cores with SSE3 instruction set support. -config MARCH_AMDFAM10 +config MARCH_X86_64_AMDFAM10 bool "AMD Family 10h cores" help CPUs based on AMD Family 10h cores with x86-64 instruction set support. (This supersets MMX, SSE, SSE2, SSE3, SSE4A, 3DNow!, enhanced 3DNow!, ABM and 64-bit instruction set extensions.) -config MARCH_BTVER1 +config MARCH_X86_64_BTVER1 bool "AMD Family 14h cores" help CPUs based on AMD Family 14h cores with x86-64 instruction set support. (This supersets MMX, SSE, SSE2, SSE3, SSSE3, SSE4A, CX16, ABM and 64-bit instruction set extensions.) -config MARCH_BDVER1 +config MARCH_X86_64_BDVER1 bool "AMD Family 15h cores (bdver1)" help CPUs based on AMD Family 15h cores with x86-64 instruction set support. (This supersets FMA4, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM and 64-bit instruction set extensions.) -config MARCH_BDVER2 +config MARCH_X86_64_BDVER2 bool "AMD Family 15h cores (bdver2)" help AMD Family 15h core based CPUs with x86-64 instruction set support. (This supersets BMI, TBM, F16C, FMA, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM and 64-bit instruction set extensions.) -config MARCH_BDVER3 +config MARCH_X86_64_BDVER3 bool "AMD Family 15h cores (bdver3)" help AMD Family 15h core based CPUs with x86-64 instruction set support. (This supersets BMI, TBM, F16C, FMA, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM and 64-bit instruction set extensions. -config MARCH_BTVER2 +config MARCH_X86_64_BTVER2 bool "AMD Family 16h cores" help CPUs based on AMD Family 16h cores with x86-64 instruction set support. This includes MOVBE, F16C, BMI, AVX, PCL_MUL, AES, SSE4.2, SSE4.1, CX16, ABM, SSE4A, SSSE3, SSE3, SSE2, SSE, MMX and 64-bit instruction set extensions. diff --git a/arch/x86/x86_64/Makefile.uk b/arch/x86/x86_64/Makefile.uk index b56228a..6b03f7a 100644 --- a/arch/x86/x86_64/Makefile.uk +++ b/arch/x86/x86_64/Makefile.uk @@ -5,33 +5,33 @@ CFLAGS += -m64 -mno-red-zone -fno-reorder-blocks -fno-asynchronous-unwind-tabl CXXFLAGS += -D__X86_64__ CXXFLAGS += -m64 -mno-red-zone -fno-reorder-blocks -fno-asynchronous-unwind-tables -CFLAGS-$(CONFIG_MARCH_GENERIC) += -mtune=generic -CXXFLAGS-$(CONFIG_MARCH_GENERIC) += -mtune=generic -CFLAGS-$(CONFIG_MARCH_NOCONA) += -march=nocona -CXXFLAGS-$(CONFIG_MARCH_NOCONA) += -march=nocona -CFLAGS-$(CONFIG_MARCH_CORE2) += -march=core2 -CXXFLAGS-$(CONFIG_MARCH_CORE2) += -march=core2 -CFLAGS-$(CONFIG_MARCH_COREI7) += -march=corei7 -CXXFLAGS-$(CONFIG_MARCH_COREI7) += -march=corei7 -CFLAGS-$(CONFIG_MARCH_COREI7AVX) += -march=corei7-avx -CXXFLAGS-$(CONFIG_MARCH_COREI7AVX) += -march=corei7-avx -CFLAGS-$(CONFIG_MARCH_COREI7AVXI) += -march=core-avx-i -CXXFLAGS-$(CONFIG_MARCH_COREI7AVXI) += -march=core-avx-i -CFLAGS-$(CONFIG_MARCH_ATOM) += -march=atom -CXXFLAGS-$(CONFIG_MARCH_ATOM) += -march=atom -CFLAGS-$(CONFIG_MARCH_K8) += -march=k8 -CXXFLAGS-$(CONFIG_MARCH_K8) += -march=k8 -CFLAGS-$(CONFIG_MARCH_K8SSE3) += -march=k8-sse3 -CXXFLAGS-$(CONFIG_MARCH_K8SSE3) += -march=k8-sse3 -CFLAGS-$(CONFIG_MARCH_AMDFAM10) += -march=amdfam10 -CXXFLAGS-$(CONFIG_MARCH_AMDFAM10) += -march=amdfam10 -CFLAGS-$(CONFIG_MARCH_BDVER1) += -march=bdver1 -CXXFLAGS-$(CONFIG_MARCH_BDVER1) += -march=bdver1 -CFLAGS-$(CONFIG_MARCH_BDVER2) += -march=bdver2 -CXXFLAGS-$(CONFIG_MARCH_BDVER2) += -march=bdver2 -CFLAGS-$(CONFIG_MARCH_BDVER3) += -march=bdver3 -CXXFLAGS-$(CONFIG_MARCH_BDVER3) += -march=bdver3 -CFLAGS-$(CONFIG_MARCH_BTVER1) += -march=btver1 -CXXFLAGS-$(CONFIG_MARCH_BTVER1) += -march=btver1 -CFLAGS-$(CONFIG_MARCH_BTVER2) += -march=btver2 -CXXFLAGS-$(CONFIG_MARCH_BTVER2) += -march=btver2 +CFLAGS-$(CONFIG_MARCH_X86_64_GENERIC) += -mtune=generic +CXXFLAGS-$(CONFIG_MARCH_X86_64_GENERIC) += -mtune=generic +CFLAGS-$(CONFIG_MARCH_X86_64_NOCONA) += -march=nocona +CXXFLAGS-$(CONFIG_MARCH_X86_64_NOCONA) += -march=nocona +CFLAGS-$(CONFIG_MARCH_X86_64_CORE2) += -march=core2 +CXXFLAGS-$(CONFIG_MARCH_X86_64_CORE2) += -march=core2 +CFLAGS-$(CONFIG_MARCH_X86_64_COREI7) += -march=corei7 +CXXFLAGS-$(CONFIG_MARCH_X86_64_COREI7) += -march=corei7 +CFLAGS-$(CONFIG_MARCH_X86_64_COREI7AVX) += -march=corei7-avx +CXXFLAGS-$(CONFIG_MARCH_X86_64_COREI7AVX) += -march=corei7-avx +CFLAGS-$(CONFIG_MARCH_X86_64_COREI7AVXI) += -march=core-avx-i +CXXFLAGS-$(CONFIG_MARCH_X86_64_COREI7AVXI) += -march=core-avx-i +CFLAGS-$(CONFIG_MARCH_X86_64_ATOM) += -march=atom +CXXFLAGS-$(CONFIG_MARCH_X86_64_ATOM) += -march=atom +CFLAGS-$(CONFIG_MARCH_X86_64_K8) += -march=k8 +CXXFLAGS-$(CONFIG_MARCH_X86_64_K8) += -march=k8 +CFLAGS-$(CONFIG_MARCH_X86_64_K8SSE3) += -march=k8-sse3 +CXXFLAGS-$(CONFIG_MARCH_X86_64_K8SSE3) += -march=k8-sse3 +CFLAGS-$(CONFIG_MARCH_X86_64_AMDFAM10) += -march=amdfam10 +CXXFLAGS-$(CONFIG_MARCH_X86_64_AMDFAM10) += -march=amdfam10 +CFLAGS-$(CONFIG_MARCH_X86_64_BDVER1) += -march=bdver1 +CXXFLAGS-$(CONFIG_MARCH_X86_64_BDVER1) += -march=bdver1 +CFLAGS-$(CONFIG_MARCH_X86_64_BDVER2) += -march=bdver2 +CXXFLAGS-$(CONFIG_MARCH_X86_64_BDVER2) += -march=bdver2 +CFLAGS-$(CONFIG_MARCH_X86_64_BDVER3) += -march=bdver3 +CXXFLAGS-$(CONFIG_MARCH_X86_64_BDVER3) += -march=bdver3 +CFLAGS-$(CONFIG_MARCH_X86_64_BTVER1) += -march=btver1 +CXXFLAGS-$(CONFIG_MARCH_X86_64_BTVER1) += -march=btver1 +CFLAGS-$(CONFIG_MARCH_X86_64_BTVER2) += -march=btver2 +CXXFLAGS-$(CONFIG_MARCH_X86_64_BTVER2) += -march=btver2 -- 2.17.1 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |