sparc64 work.
commite11ae91fc3a4227bcea74717abb36d585ceb5627
authorJakub Jermar <jakub@jermar.eu>
Wed, 30 Aug 2006 11:31:25 +0000 (30 11:31 +0000)
committerJakub Jermar <jakub@jermar.eu>
Wed, 30 Aug 2006 11:31:25 +0000 (30 11:31 +0000)
tree00b7659f02a244497e2fcf3c82b5ba5466a63b10
parent0fa6044030c5c9175f76bf5a500b45f6f66598e6
sparc64 work.
- Modify before_thread_runs_arch() to store addresses of the kernel stack and
userspace window buffer, resp., to registers %g6 and %g7, resp, in the
alternate and interrupt global sets.
- Modify after_thread_ran_arch() to sample %g7 from the alternate globals.
- Implement trap handler for spilling register windows into userspace window buffer.
- Implement assembly language functions to access %g6 and %g7 registers in the alternate sets.
- Initialize the trap table so that there are now also spill_1_normal, spill_2_normal,
spill_0_other and fill_1_normal handlers. These handlers are used in different situations
and for different purposes.
kernel/arch/sparc64/include/asm.h
kernel/arch/sparc64/include/context.h
kernel/arch/sparc64/include/trap/regwin.h
kernel/arch/sparc64/src/asm.S
kernel/arch/sparc64/src/proc/scheduler.c
kernel/arch/sparc64/src/trap/trap_table.S
kernel/generic/include/config.h