ref: 5dd10e9c70f317eee0d5fc4fde419db2878ba2d0
parent: 1d16d38d4ee4dccb2a3c9dad2f5be55a2236bd27
author: Martin Storsjö <[email protected]>
date: Wed May 6 07:27:07 EDT 2020
arm64: Explicitly forbid using the x18 register On windows and darwin (and modern android), the x18 register is reserved and shouldn't be modified by user code, while it is freely available on linux. Strictly avoid it, to keep the assembly code portable.
--- a/src/arm/asm.S
+++ b/src/arm/asm.S
@@ -135,4 +135,9 @@
#define X(x) CONCAT(EXTERN, x)
+#if ARCH_AARCH64
+#define x18 do_not_use_x18
+#define w18 do_not_use_w18
+#endif
+
#endif /* DAV1D_SRC_ARM_ASM_S */