On Sun, Mar 22, 1998 at 09:30:05PM -0800, William J. Earl wrote:
> > I'm thinking about not saving the temporary registers on syscall entry;
> > I'm just not shure if this would break the semantics of ptrace(2).
> ...
>
> UMIPS-BSD (4.3 BSD on the MIPS M/1000) did not save the temporary
> registers on syscall(). It did, of course, save them on interrupts,
> so preemption left the registers valid. I don't see why saving the
> registers on syscall should affect ptrace(), since the ptrace()
> caller is acting on another process, which will have saved all its
> registers if preempted. That change ought to let the R5000 beat
> the Pentium, despite the Indy's miserable memory latency.
Yeah, let's make some nice benchmarks that are going to fry the borg :-)
Given that we have that many registers I think we might reach the magic
1.0 microseconds. It's just 56 cycles we need to get from somewhere ...
I was thinking about ptrace(2) because on Linux it has an option
(PF_TRACESYS) where the tracee is only stopped on syscalls. Anyway, the
lost registers are just temporary registers, so away with 'em ...
Ralf
|