lkml.org 
[lkml]   [1998]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: Don't save registers during system calls
From
Date
H Peter Anvin <hpa@transmeta.com> writes:

|>> H Peter Anvin <hpa@transmeta.com> writes:
|>>
|>> |>> FWIW, the m68k port already essentially does this. On kernel entry it
|>> |>> only saves the registers that are call-clobbered in C (plus the registers
|>> |>> that contain the syscall arguments so that they can be accessed through
|>> |>> the normal C argument passing), the rest are only implicitly saved in the
|>> |>> normal stack frames and during context switch. Since the m68k has many
|>> |>> more registers than the ix86 this is a real win.
|>> |>>
|>>
|>> |> That's not quite what he's proposing. You're just doing the same
|>> |> thing, it's just that the saves are later. I think he was proposing
|>> |> that the kernel use a smaller (clobbered) register set than user space
|>> |> would, hence (hopefully) not needing to save and restore some of the
|>> |> registers at all. Since the Alpha has many more registers than the
|>> |> m68k, this might be a win, too.
|>>
|>> But that would only mean that you have to change the register allocation
|>> in the compiler. Or do i miss something?

|> So?

In other words, it's not a real kernel issue.

--
Andreas Schwab "And now for something
schwab@issan.informatik.uni-dortmund.de completely different"
schwab@gnu.org

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu

\
 
 \ /
  Last update: 2005-03-22 13:42    [W:0.078 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site