diff options
Diffstat (limited to 'historical/exit-code.gnu.asm')
| -rw-r--r-- | historical/exit-code.gnu.asm | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/historical/exit-code.gnu.asm b/historical/exit-code.gnu.asm new file mode 100644 index 0000000..48b7e62 --- /dev/null +++ b/historical/exit-code.gnu.asm @@ -0,0 +1,29 @@ +/* + * This file was a very early example, written by consulting [1]. It was + * useful primarily to see how the GNU assembler handles these opcodes, to + * better understand the encoding. + * + * [1] https://www.muppetlabs.com/~breadbox/software/tiny/teensy.html + * + * + * gcc -o exit-code -nostartfiles -nostdlib exit-code.gnu.asm && ./exit-code ; echo $? + * + * or + * + * as -o exit-code.o exit-code.gnu.asm && ld -s -o exit-code exit-code.o && ./exit-code; echo $? + * + * Can't use nasm, nasm is 32-bit only. + * + * Since you get a nice clean file, you can then do: + * + * objdump --disassemble exit-code + */ +.text + +.global _start + +_start: + mov $60, %eax + mov $42, %edi + syscall + |