Also note that Apple AArch64 (ie arm64) has a slightly different calling convention than Linux aarch64, which is going to influence pretty much any compiler/jit/runtime here.
Well, that depends. Deep inside a JIT it doesn’t really matter what the calling convention is because the code only needs to interact with itself, and can use whatever convention it wishes there. Even outside of that the changes Apple has made are fairly minor-a register here and there, aside from variadics.