added freebsdx64.asm for platform-specific stuff and moved the exit() syscall into a macro