[patch] entry.S asm improvement (removed some ugly jmp)

Andrea Arcangeli (andrea@e-mind.com)
Fri, 27 Nov 1998 12:14:48 +0100 (CET)


This my patch (from arca-33) should be obviously right and will improve
performance...

Index: linux/arch/i386/kernel/entry.S
diff -u linux/arch/i386/kernel/entry.S:1.1.1.2 linux/arch/i386/kernel/entry.S:1.1.1.1.2.1
--- linux/arch/i386/kernel/entry.S:1.1.1.2 Fri Nov 27 11:15:15 1998
+++ linux/arch/i386/kernel/entry.S Fri Nov 20 00:15:12 1998
@@ -197,16 +197,16 @@
movl %esp,%eax
jne v86_signal_return
xorl %edx,%edx
- call SYMBOL_NAME(do_signal)
- jmp restore_all
+ pushl $restore_all
+ jmp SYMBOL_NAME(do_signal)

ALIGN
v86_signal_return:
call SYMBOL_NAME(save_v86_state)
movl %eax,%esp
xorl %edx,%edx
- call SYMBOL_NAME(do_signal)
- jmp restore_all
+ pushl $restore_all
+ jmp SYMBOL_NAME(do_signal)

ALIGN
tracesys:
@@ -215,8 +215,8 @@
movl ORIG_EAX(%esp),%eax
call *SYMBOL_NAME(sys_call_table)(,%eax,4)
movl %eax,EAX(%esp) # save the return value
- call SYMBOL_NAME(syscall_trace)
- jmp ret_from_sys_call
+ pushl $ret_from_sys_call
+ jmp SYMBOL_NAME(syscall_trace)
badsys:
movl $-ENOSYS,EAX(%esp)
jmp ret_from_sys_call

Andrea Arcangeli

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/