Get aarch64 hello world working

$ m=aarch64-tiny
    $ make -j8 m=$m o/$m/tool/hello/hello.com o/third_party/qemu/qemu-aarch64
    $ o/third_party/qemu/qemu-aarch64 o/$m/tool/hello/hello.com
    hello world
    $ ls -hal o/$m/tool/hello/hello.com
    -rwxr-xr-x 1 jart jart 4.0K May  9 05:04 o/aarch64-tiny/tool/hello/hello.com
This commit is contained in:
Justine Tunney 2023-05-09 02:35:05 -07:00
parent e5e3cdf447
commit ae0ee59614
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
174 changed files with 1454 additions and 851 deletions

View file

@ -20,9 +20,20 @@
.text.unlikely
__errfun:
.errno
#ifdef __x86_64__
call __errno_location
mov %ecx,(%rax)
push $-1
pop %rax
.leafepilogue
.leafepilogue // .leafprologue is in errfuns/...
#elif defined(__aarch64__)
stp x19,x30,[sp,#-16]!
mov w19,w0
bl __errno_location
str w19,[x0]
mov x0,#-1
ldp x19,x30,[sp],#16
#else
#error "unsupported architecture"
#endif
.endfn __errfun,globl,hidden