From 08b70fe8eb717d398d6523931ba1d7fddb2ddd30 Mon Sep 17 00:00:00 2001 From: okuji Date: Sat, 28 Dec 2002 07:42:12 +0000 Subject: [PATCH] 2002-12-28 Yoshinori K. Okuji * kern/i386/pc/startup.S (push_get_mmap_entry): Revert to a bunch of pushl's from pusha, because this destroys the return value. --- ChangeLog | 6 ++++++ kern/i386/pc/startup.S | 10 ++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index e531142ec..878037f2a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2002-12-28 Yoshinori K. Okuji + + * kern/i386/pc/startup.S (push_get_mmap_entry): Revert to a + bunch of pushl's from pusha, because this destroys the return + value. + 2002-12-28 Yoshinori K. Okuji Use -mrtd and -mregparm=3 to reduce the generated code sizes. diff --git a/kern/i386/pc/startup.S b/kern/i386/pc/startup.S index aaabdc307..5e6d55604 100644 --- a/kern/i386/pc/startup.S +++ b/kern/i386/pc/startup.S @@ -797,7 +797,10 @@ xnoteisa: */ FUNCTION(pupa_get_mmap_entry) - pusha + pushl %ebp + pushl %ebx + pushl %edi + pushl %esi /* push ADDR */ pushl %eax @@ -852,7 +855,10 @@ xsmap: /* set return value to continuation */ movl %ebx, %eax - popa + popl %esi + popl %edi + popl %ebx + popl %ebp ret