Build the arm64 loader with -ffixed-x18

This stops the compiler from using the x18 register. Some UEFI
implementations assume this will be preserved when calling the Boot
Services.

MFC after:	2 weeks
Sponsored by:	Innovate UK
This commit is contained in:
andrew 2020-04-24 10:03:11 +00:00
parent 2babfeb092
commit 8cefde7dab

View File

@ -119,7 +119,7 @@ SSP_CFLAGS=
# currently has no /boot/loader, but may soon.
CFLAGS+= -ffreestanding ${CFLAGS_NO_SIMD}
.if ${MACHINE_CPUARCH} == "aarch64"
CFLAGS+= -mgeneral-regs-only -fPIC
CFLAGS+= -mgeneral-regs-only -ffixed-x18 -fPIC
.elif ${MACHINE_CPUARCH} == "riscv"
CFLAGS+= -march=rv64imac -mabi=lp64
.else