diff options
author | Jakob Kaivo <jkk@ung.org> | 2020-08-15 09:03:26 -0400 |
---|---|---|
committer | Jakob Kaivo <jkk@ung.org> | 2020-08-15 09:03:26 -0400 |
commit | cdcd1977d7b8d8f92a950777462e3d02af90a6bc (patch) | |
tree | 8befb214e2570d7914cf7ab54097877708e39765 /src/__sys.x86-32.s | |
parent | 014a49e4aee821ca3490f318ce6d875942f4018f (diff) |
implement as syscall
Diffstat (limited to 'src/__sys.x86-32.s')
-rw-r--r-- | src/__sys.x86-32.s | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/__sys.x86-32.s b/src/__sys.x86-32.s new file mode 100644 index 00000000..ad60201d --- /dev/null +++ b/src/__sys.x86-32.s @@ -0,0 +1,18 @@ +.global __syscall +__syscall: + mov 4(%esp), %eax + mov 8(%esp), %ebx + mov 12(%esp), %ecx + mov 16(%esp), %edx + mov 20(%esp), %esi + mov 24(%esp), %edi + mov 28(%esp), %ebp + sysenter + ret + +/* FIXME: this seems to be unpossible to put in a shared library */ +/* FIXME: it may be worthwhile to separate this into crt1.s */ +.global _start +_start: + /* TODO */ + call __libc_start |