Introduce native support for MacOS ARM64

There's a new program named ape/ape-m1.c which will be used to build an
embeddable binary that can load ape and elf executables. The support is
mostly working so far, but still chasing down ABI issues.
This commit is contained in:
Justine Tunney 2023-05-18 19:05:08 -07:00
parent b852650c08
commit 1422e96b4e
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
757 changed files with 2988 additions and 1321 deletions

View file

@ -435,29 +435,29 @@ syscon utime UTIME_OMIT 0x3ffffffe 0x3ffffffe 0x3ffffffe -2 -1 0x3ffff
#
# group name GNU/Systemd GNU/Systemd (Aarch64) XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
syscon auxv AT_EXECFD 2 2 0 2 0 2 0 # file descriptor of program
syscon auxv AT_PHDR 3 3 0 3 0 3 0 # address of program headers of executable
syscon auxv AT_PHENT 4 4 0 4 0 4 0
syscon auxv AT_PHNUM 5 5 0 5 0 5 0
syscon auxv AT_PAGESZ 6 6 0 6 0 6 0
syscon auxv AT_BASE 7 7 0 7 0 7 0 # address of program interpreter
syscon auxv AT_PHDR 3 3 3 3 0 3 0 # address of program headers of executable
syscon auxv AT_PHENT 4 4 4 4 0 4 0
syscon auxv AT_PHNUM 5 5 5 5 0 5 0
syscon auxv AT_PAGESZ 6 6 6 6 0 6 0
syscon auxv AT_BASE 7 7 7 7 0 7 0 # address of program interpreter
syscon auxv AT_FLAGS 8 8 0 8 0 8 0
syscon auxv AT_ENTRY 9 9 0 9 0 9 0 # entry address of executable
syscon auxv AT_ENTRY 9 9 9 9 0 9 0 # entry address of executable
syscon auxv AT_NOTELF 10 10 0 10 0 0 0
syscon auxv AT_OSRELDATE 0 0 0 18 0 0 0
syscon auxv AT_UID 11 11 0 0 0 2001 0
syscon auxv AT_EUID 12 12 0 0 0 2000 0
syscon auxv AT_GID 13 13 0 0 0 2003 0
syscon auxv AT_EGID 14 14 0 0 0 2002 0
syscon auxv AT_UID 11 11 11 0 0 2001 0
syscon auxv AT_EUID 12 12 12 0 0 2000 0
syscon auxv AT_GID 13 13 13 0 0 2003 0
syscon auxv AT_EGID 14 14 14 0 0 2002 0
syscon auxv AT_PLATFORM 15 15 0 0 0 0 0 # address of string with hardware platform for rpath interpretation
syscon auxv AT_HWCAP 16 16 0 0 0 0 0
syscon auxv AT_HWCAP 16 16 16 0 0 0 0
syscon auxv AT_CLKTCK 17 17 0 0 0 0 0
syscon auxv AT_DCACHEBSIZE 19 19 0 0 0 0 0
syscon auxv AT_ICACHEBSIZE 20 20 0 0 0 0 0
syscon auxv AT_UCACHEBSIZE 21 21 0 0 0 0 0
syscon auxv AT_SECURE 23 23 0 0 0 0 0
syscon auxv AT_SECURE 23 23 23 0 0 0 0
syscon auxv AT_BASE_PLATFORM 24 24 0 0 0 0 0
syscon auxv AT_RANDOM 25 25 0 16 0 0 0 # address of sixteen bytes of random data; AT_CANARY on FreeBSD whose AT_CANARYLEN should be 64
syscon auxv AT_HWCAP2 26 26 0 0 0 0 0
syscon auxv AT_RANDOM 25 25 25 16 0 0 0 # address of sixteen bytes of random data; AT_CANARY on FreeBSD whose AT_CANARYLEN should be 64
syscon auxv AT_HWCAP2 26 26 26 0 0 0 0
syscon auxv AT_EXECFN 31 31 31 15 999 2014 31 # address of string containing first argument passed to execve() used when running program; AT_EXECPATH on FreeBSD
syscon auxv AT_SYSINFO_EHDR 33 33 0 0 0 0 0
syscon auxv AT_STACKBASE 0 0 0 0 0 13 0