Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
666 |
6892 d 23 h |
jermar |
/kernel/trunk/ |
sparc64 work.
Fix clean_window trap handler so that it clears output registers instead of input registers!
Fix interrupt handlers to save global registers. |
|
/kernel/trunk/arch/sparc64/include/context.h /kernel/trunk/arch/sparc64/include/context_offset.h /kernel/trunk/arch/sparc64/include/trap/interrupt.h /kernel/trunk/arch/sparc64/include/trap/regwin.h /kernel/trunk/arch/sparc64/include/trap/trap_table.h /kernel/trunk/arch/sparc64/src/context.S /kernel/trunk/arch/sparc64/src/panic.S /kernel/trunk/arch/sparc64/src/trap/trap_table.S /kernel/trunk/tools/sparc64/gencontext.c
|
657 |
6898 d 21 h |
jermar |
/kernel/trunk/ |
sparc64 work.
Context again. It turns out, according to SCD 2.4, that registers that didn't have to be saved were saved (%o1 - %o5) and
registers that had to be saved were not saved (%i0 - %i5, %l0 - %l7). |
|
/kernel/trunk/arch/sparc64/include/context.h /kernel/trunk/arch/sparc64/include/context_offset.h /kernel/trunk/arch/sparc64/src/context.S /kernel/trunk/tools/sparc64/gencontext.c
|
650 |
6900 d 22 h |
jermar |
/kernel/trunk/ |
sparc64 work.
Implement interrupt_disable(), interrupt_enable(), interrupt_restore() and interrupt_read() functions.
Fix context save/restore to save/restore register %i7. |
|
/kernel/trunk/arch/sparc64/include/asm.h /kernel/trunk/arch/sparc64/include/context.h /kernel/trunk/arch/sparc64/include/context_offset.h /kernel/trunk/arch/sparc64/include/register.h /kernel/trunk/arch/sparc64/src/context.S /kernel/trunk/arch/sparc64/src/dummy.s /kernel/trunk/generic/include/debug.h /kernel/trunk/generic/src/proc/scheduler.c
|
534 |
6916 d 1 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel again. |
|
/kernel
/SPARTAN
|
532 |
6916 d 1 h |
jermar |
/ |
Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch. |
|
/SPARTAN
/kernel
|
529 |
6918 d 4 h |
jermar |
/kernel/trunk/arch/sparc64/ |
sparc64 work.
Add dummy trap tables. |
|
/kernel/trunk/arch/sparc64/include/trap_table.h /kernel/trunk/arch/sparc64/src/trap_table.S
/kernel/trunk/arch/sparc64/Makefile.inc /kernel/trunk/arch/sparc64/include/asm.h /kernel/trunk/arch/sparc64/src/context.S /kernel/trunk/arch/sparc64/src/sparc64.c /kernel/trunk/arch/sparc64/src/start.S
|
528 |
6919 d 0 h |
jermar |
/kernel/trunk/ |
sparc64 work.
The context_save/context_restore needed two other improvements.
First, storing of %fp because of window_fills.
Second, flushing all active windows before CONTEXT_LOAD to make CWP - 1 the overlap window. |
|
/kernel/trunk/arch/sparc64/include/context.h /kernel/trunk/arch/sparc64/include/context_offset.h /kernel/trunk/arch/sparc64/src/context.S /kernel/trunk/tools/sparc64/gencontext.c
|
527 |
6919 d 7 h |
jermar |
/kernel/trunk/ |
saprc64 work.
Perform leaf-procedure optimization for context_save and context_restore. |
|
/kernel/trunk/arch/sparc64/include/context.h /kernel/trunk/arch/sparc64/include/context_offset.h /kernel/trunk/arch/sparc64/src/context.S /kernel/trunk/tools/sparc64/gencontext.c
|
526 |
6919 d 7 h |
jermar |
/kernel/trunk/ |
sparc64 work.
No need to save/restore local registers. |
|
/kernel/trunk/arch/sparc64/include/context.h /kernel/trunk/arch/sparc64/include/context_offset.h /kernel/trunk/arch/sparc64/src/context.S /kernel/trunk/tools/sparc64/gencontext.c
|
525 |
6919 d 10 h |
jermar |
/kernel/trunk/arch/sparc64/ |
sparc64 work.
Add stack.h. |
|
/kernel/trunk/arch/sparc64/include/stack.h
/kernel/trunk/arch/sparc64/include/context.h /kernel/trunk/arch/sparc64/src/context.S
|
501 |
6928 d 6 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel. |
|
/kernel
/SPARTAN
|
472 |
6941 d 6 h |
jermar |
/SPARTAN/trunk/ |
Changes in build system.
For .S targets, always do -D__ASM__.
Remove unnecessary #define __ASM__ from various *.S files.
At the end of build, generate disassembler dump for kernel.raw.
ia64 work.
Better General Exception handler. |
|
/SPARTAN/trunk/Makefile /SPARTAN/trunk/arch/amd64/src/asm_utils.S /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/amd64/src/smp/ap.S /SPARTAN/trunk/arch/ia32/src/boot/boot.S /SPARTAN/trunk/arch/ia64/include/asm.h /SPARTAN/trunk/arch/ia64/include/interrupt.h /SPARTAN/trunk/arch/ia64/include/register.h /SPARTAN/trunk/arch/ia64/src/interrupt.c /SPARTAN/trunk/arch/ia64/src/ivt.S /SPARTAN/trunk/arch/mips32/src/context.S /SPARTAN/trunk/arch/mips32/src/start.S /SPARTAN/trunk/arch/sparc64/src/context.S
|
428 |
6951 d 3 h |
jermar |
/SPARTAN/trunk/arch/sparc64/src/ |
sparc64 work.
In context_save() and context_restore(), reserve 128 bytes on stack for save area. |
|
/SPARTAN/trunk/arch/sparc64/src/context.S
|
426 |
6951 d 7 h |
jermar |
/SPARTAN/trunk/ |
sparc64 work.
Add context_save(), context_set() and context_restore().
Remove putchar() definition from ofw.c.
Add sparc64 putchar().
Add ppc32 putchar() (i.e. the original ofw.c putchar()).
Make arg.h use the builtin va_* constructs. |
|
/SPARTAN/trunk/arch/ppc32/src/console.c /SPARTAN/trunk/arch/sparc64/src/asm.S /SPARTAN/trunk/arch/sparc64/src/console.c /SPARTAN/trunk/arch/sparc64/src/context.S /SPARTAN/trunk/arch/sparc64/src/mm /SPARTAN/trunk/arch/sparc64/src/mm/frame.c /SPARTAN/trunk/arch/sparc64/src/mm/page.c /SPARTAN/trunk/tools/sparc64 /SPARTAN/trunk/tools/sparc64/gencontext.c
/SPARTAN/trunk/arch/mips32/include/arg.h /SPARTAN/trunk/arch/ppc32/Makefile.inc /SPARTAN/trunk/arch/sparc64/Makefile.inc /SPARTAN/trunk/arch/sparc64/_link.ld /SPARTAN/trunk/arch/sparc64/include/arg.h /SPARTAN/trunk/arch/sparc64/include/asm.h /SPARTAN/trunk/arch/sparc64/include/context.h /SPARTAN/trunk/arch/sparc64/include/types.h /SPARTAN/trunk/arch/sparc64/src/dummy.s /SPARTAN/trunk/arch/sparc64/src/start.S /SPARTAN/trunk/build.sparc64 /SPARTAN/trunk/clean.sparc64 /SPARTAN/trunk/genarch/include/firmware/ofw/ofw.h /SPARTAN/trunk/genarch/src/firmware/ofw/ofw.c
|