[PATCH] x86_64: Use the x86-64 level for purgatory

Ross Lagerwall ross.lagerwall at citrix.com
Thu Apr 17 01:31:40 PDT 2025


The compiler may be configured by default to use a newer
microarchitecture level such as x86-64-v3. Set purgatory to compile
using the baseline x86-64 level since the environment isn't set up
correctly to use SSE and AVX instructions.  At the same time, be a bit
paranoid and add some additional flags to ensure that the compiler
doesn't use any such instructions.

Signed-off-by: Ross Lagerwall <ross.lagerwall at citrix.com>
---
 purgatory/arch/x86_64/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/purgatory/arch/x86_64/Makefile b/purgatory/arch/x86_64/Makefile
index b0e277a365b2..fd19229a2bf4 100644
--- a/purgatory/arch/x86_64/Makefile
+++ b/purgatory/arch/x86_64/Makefile
@@ -24,5 +24,5 @@ x86_64_PURGATORY_SRCS += purgatory/arch/i386/vga.c
 x86_64_PURGATORY_SRCS += purgatory/arch/i386/pic.c
 
 ifneq ($(SUBARCH),x32)
-x86_64_PURGATORY_EXTRA_CFLAGS = -mcmodel=large
+x86_64_PURGATORY_EXTRA_CFLAGS = -mcmodel=large -march=x86-64 -mno-mmx -mno-sse -mno-sse2 -mno-avx
 endif
-- 
2.49.0




More information about the kexec mailing list