summaryrefslogtreecommitdiff
path: root/setjmp.S
diff options
context:
space:
mode:
Diffstat (limited to 'setjmp.S')
-rw-r--r--setjmp.S8
1 files changed, 4 insertions, 4 deletions
diff --git a/setjmp.S b/setjmp.S
index 75cf641..39c85b0 100644
--- a/setjmp.S
+++ b/setjmp.S
@@ -1,7 +1,7 @@
.globl setjmp
setjmp:
movl 4(%esp), %eax
-
+
movl %ebx, 0(%eax)
movl %ecx, 4(%eax)
movl %edx, 8(%eax)
@@ -11,14 +11,14 @@ setjmp:
movl %ebp, 24(%eax)
pushl 0(%esp) /* %eip */
popl 28(%eax)
-
+
movl $0, %eax /* return value */
ret
.globl longjmp
longjmp:
movl 4(%esp), %eax
-
+
movl 0(%eax), %ebx
movl 4(%eax), %ecx
movl 8(%eax), %edx
@@ -29,7 +29,7 @@ longjmp:
addl $4, %esp /* pop %eip into thin air */
pushl 28(%eax) /* push new %eip */
-
+
movl $1, %eax /* return value (appears to come from setjmp!) */
ret