X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=kern%2Fswitch_i386.s;h=6931d45c9986636b931ebb4be1411338dda471e7;hb=2535cb94ec2183791128f8bbd109ca69a960cf78;hp=c4a23da12861e988ab0982533c782b0aeced3abe;hpb=1cc167e20f21d2e81527ca47ccd4a21a6198f86f;p=bertos.git diff --git a/kern/switch_i386.s b/kern/switch_i386.s old mode 100755 new mode 100644 index c4a23da1..6931d45c --- a/kern/switch_i386.s +++ b/kern/switch_i386.s @@ -3,7 +3,7 @@ * * * \brief i386 context switch @@ -13,21 +13,9 @@ * \author Bernardo Innocenti */ - * - * $Log$ - * Revision 1.1 2004/05/23 17:27:00 bernie - * Import kern/ subdirectory. - * - */ - -!!!!!! THIS FILE HAS NOT BEEN REVISED FOR THE NEW SCHEDULER API !!!!!! - -/* I know it's ugly... */ -#.intel_syntax - -/* void AsmSwitchContext(void * new_sp, void ** save_sp) */ -.globl AsmSwitchContext -AsmSwitchContext: +/* void asm_switch_context(void ** new_sp, void ** save_sp) */ +.globl asm_switch_context +asm_switch_context: pushl %eax pushl %ebx pushl %ecx @@ -35,9 +23,10 @@ AsmSwitchContext: pushl %esi pushl %edi pushl %ebp - movl 0x24(%esp),%ebp /* ebp = save_sp */ - movl %esp,(%ebp) /* *save_sp = esp */ - movl 0x20(%esp),%esp /* esp = new_sp */ + movl 0x24(%esp),%ebp /* ebp = save_sp */ + movl %esp,(%ebp) /* *save_sp = esp */ + movl 0x20(%esp),%ebp /* ebp = new_sp */ + movl (%ebp),%esp /* esp = *new_sp */ popl %ebp popl %edi popl %esi @@ -47,16 +36,9 @@ AsmSwitchContext: popl %eax ret -/* void AsmReplaceContext(void * new_sp, void ** dummy) */ -.globl AsmReplaceContext -AsmReplaceContext: - movl 4(%esp),%esp /* esp = new_sp */ - popl %ebp - popl %edi - popl %esi - popl %edx - popl %ecx - popl %ebx - popl %eax +/* int asm_switch_version(void) */ +.globl asm_switch_version +asm_switch_version: + mov $1,%eax ret