Or is my only option for properly exiting from _start to link against libc and using it's exit() wrapper?
No, we don't have direct generation of syscall instructions, so you'll need to either call out to libc, or write your own (e.g. you could do a crt0 wrapper for _start that does a normal function call to your Cranelift-compiled code, then does the exit syscall itself)
Last updated: Jan 10 2026 at 02:36 UTC