cosmopolitan/examples/package/lib/myasm.S
Justine Tunney fd34ef732d
Make considerably more progress on AARCH64
- Utilities like pledge.com now build
- kprintf() will no longer balk at 48-bit addresses
- There's a new aarch64-dbg build mode that should work
- gc() and defer() are mostly pacified; avoid using them on aarch64
- THIRD_PART_STB now has Arm Neon intrinsics for fast image handling
2023-05-12 22:42:57 -07:00

25 lines
498 B
ArmAsm

#include "libc/macros.internal.h"
// Example assembly function.
//
// @note param agnostic
// @note we love stack frames
// easiest way to do backtraces
// somehow they usually make code faster
// it's convention for keeping stack 16-byte aligned
// cpus still devote much to pushing & popping b/c i386
MyAsm:
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
call MyPrint2
pop %rbp
#elif defined(__aarch64__)
bl MyPrint2
#else
#error "unsupported architecture"
#endif
ret
.endfn MyAsm,globl