diff options
author | Jason Evans <jasone@FreeBSD.org> | 2000-05-24 04:14:41 +0000 |
---|---|---|
committer | Jason Evans <jasone@FreeBSD.org> | 2000-05-24 04:14:41 +0000 |
commit | 7f8cdb6f0056fedb27bdd67aa374a8f938f79f36 (patch) | |
tree | 0067d99ba3b510495cedf8c3f419bf9dd9b8ca9c /devel/linuxthreads/files/clone.S | |
parent | ef51112364ec71f5989e6fb89c7f917361e4c818 (diff) | |
download | ports-7f8cdb6f0056fedb27bdd67aa374a8f938f79f36.tar.gz ports-7f8cdb6f0056fedb27bdd67aa374a8f938f79f36.zip |
Notes
Diffstat (limited to 'devel/linuxthreads/files/clone.S')
-rw-r--r-- | devel/linuxthreads/files/clone.S | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/devel/linuxthreads/files/clone.S b/devel/linuxthreads/files/clone.S index 51e7560446b0..7a868b2becc5 100644 --- a/devel/linuxthreads/files/clone.S +++ b/devel/linuxthreads/files/clone.S @@ -14,12 +14,6 @@ * 8 12 16 20 * _clone (__fn, __childstack, __flags, __arg); * - * I'm pretty shakey on assembly language, so someone else better - * check this! I don't even know what half this stuff means, its - * just copied from somewhere else (rf.S). - * - * It seems to work though. - * * Here's the idea: * __childstack is the TOS for the new rforked thread * __flags are the rfork flags @@ -42,14 +36,14 @@ ENTRY(_clone) /* * Push thread info onto the new thread's stack */ - movl 12(%ebp), %esi / get stack addr + movl 12(%ebp), %esi /* get stack addr */ subl $4, %esi - movl 20(%ebp), %eax / get __arg + movl 20(%ebp), %eax /* get __arg */ movl %eax, (%esi) subl $4, %esi - movl 8(%ebp), %eax / get __fn + movl 8(%ebp), %eax /* get __fn */ movl %eax, (%esi) .stabd 68,0,2 @@ -97,7 +91,7 @@ ENTRY(_clone) #ifdef DEBUG movl %eax,_fcn #endif - call %eax + call *%eax addl $8, %esp /* |