Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
483 |
6850 d 10 h |
jermar |
/SPARTAN/trunk/ |
For now, each architecture must use its own -O switch (-O2 doesn't work for ia64, -O3 doesn't work for mips32).
New mips32 atomic_add() function.
Cleanup. |
|
/SPARTAN/trunk/Makefile /SPARTAN/trunk/Makefile.config /SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/mips32/Makefile.inc /SPARTAN/trunk/arch/mips32/include/atomic.h /SPARTAN/trunk/arch/mips32/include/cpu.h /SPARTAN/trunk/arch/mips32/src/interrupt.c /SPARTAN/trunk/arch/ppc32/Makefile.inc /SPARTAN/trunk/arch/sparc64/Makefile.inc /SPARTAN/trunk/generic/include/arch.h /SPARTAN/trunk/generic/include/config.h /SPARTAN/trunk/generic/include/cpu.h /SPARTAN/trunk/generic/include/proc/scheduler.h /SPARTAN/trunk/generic/include/synch/rwlock.h /SPARTAN/trunk/generic/include/typedefs.h /SPARTAN/trunk/generic/src/proc/scheduler.c /SPARTAN/trunk/test/fpu/fpu1/test.c /SPARTAN/trunk/test/fpu/mips1/test.c /SPARTAN/trunk/test/fpu/sse1/test.c /SPARTAN/trunk/test/synch/rwlock5/test.c
|
478 |
6853 d 13 h |
jermar |
/SPARTAN/trunk/ |
Re-aply mistakenly reverted changes. |
|
/SPARTAN/trunk/Makefile.config /SPARTAN/trunk/arch/ia64/include/atomic.h /SPARTAN/trunk/arch/ia64/src/ivt.S
|
477 |
6853 d 16 h |
vana |
/SPARTAN/trunk/ |
Atomic inc & dec functions synchronized on all ia32,ia64 and mips platforms. Now there are 3 versions which returns no value, new value and old value och changed variable. |
|
/SPARTAN/trunk/Makefile.config /SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/arch/ia64/include/atomic.h /SPARTAN/trunk/arch/ia64/src/ivt.S /SPARTAN/trunk/arch/mips32/include/atomic.h
|
476 |
6853 d 17 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
ia64 CPU identification. |
|
/SPARTAN/trunk/arch/ia64/include/cpu.h /SPARTAN/trunk/arch/ia64/include/register.h /SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/dummy.s
|
475 |
6854 d 16 h |
jermar |
/SPARTAN/trunk/ |
Define atomic_t type. |
|
/SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/arch/ia64/include/atomic.h /SPARTAN/trunk/arch/mips32/include/atomic.h /SPARTAN/trunk/arch/ppc32/include/atomic.h /SPARTAN/trunk/arch/sparc64/include/atomic.h /SPARTAN/trunk/generic/include/proc/scheduler.h /SPARTAN/trunk/generic/src/proc/scheduler.c /SPARTAN/trunk/generic/src/proc/thread.c /SPARTAN/trunk/test/synch/rwlock4/test.c /SPARTAN/trunk/test/synch/rwlock5/test.c /SPARTAN/trunk/test/synch/semaphore1/test.c /SPARTAN/trunk/test/synch/semaphore2/test.c
|
473 |
6855 d 7 h |
jermar |
/SPARTAN/trunk/arch/ia64/src/ |
ia64 work.
Comment some offending steps of heavyweight interrupt handler regarding RSE switching.
With this change, ia64 will do well on tests rwlock #4 and thread #1.
Cleanup. |
|
/SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/ivt.S /SPARTAN/trunk/arch/ia64/src/start.S
|
472 |
6855 d 16 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
|
470 |
6856 d 5 h |
jermar |
/SPARTAN/trunk/ |
ia64 work.
Big cleanup of IA-64 interrupt processing.
Merge of interrupt.c and interrupt_handler.c.
Rewrite of ivt.S and interrupt.c.
Higher level interrupt handlers are now passed a vector number and a pointer to stack structure.
ia32 work.
ia32 has ordered writes. Until it deploys weaker memory ordering model, write_barrier() can be empty statement. |
|
/SPARTAN/trunk/arch/ia64/src/interrupt_handler.c
/SPARTAN/trunk/arch/ia32/include/barrier.h /SPARTAN/trunk/arch/ia64/Makefile.inc /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/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/ia64.c /SPARTAN/trunk/arch/ia64/src/interrupt.c /SPARTAN/trunk/arch/ia64/src/ivt.S /SPARTAN/trunk/generic/src/main/main.c
|
461 |
6856 d 17 h |
decky |
/SPARTAN/trunk/ |
link kernel in ARCH's native format first, then use objcopy to create output format |
|
/SPARTAN/trunk/Makefile /SPARTAN/trunk/arch/amd64/_link.ld.in /SPARTAN/trunk/arch/ia32/_link.ld.in /SPARTAN/trunk/arch/ia64/_link.ld.in /SPARTAN/trunk/arch/mips32/_link.ld.in /SPARTAN/trunk/arch/ppc32/_link.ld.in /SPARTAN/trunk/arch/sparc64/_link.ld.in
|
457 |
6856 d 18 h |
decky |
/SPARTAN/trunk/ |
new build system almost finished |
|
/SPARTAN/trunk/arch/amd64/include/atomic.h /SPARTAN/trunk/arch/amd64/include/barrier.h /SPARTAN/trunk/arch/amd64/include/bios /SPARTAN/trunk/arch/amd64/include/boot/memmap.h /SPARTAN/trunk/arch/amd64/include/boot/memmapasm.h /SPARTAN/trunk/arch/amd64/include/context_offset.h /SPARTAN/trunk/arch/amd64/include/ega.h /SPARTAN/trunk/arch/amd64/include/fpu_context.h /SPARTAN/trunk/arch/amd64/include/i8042.h /SPARTAN/trunk/arch/amd64/include/i8254.h /SPARTAN/trunk/arch/amd64/include/i8259.h /SPARTAN/trunk/arch/amd64/include/interrupt.h /SPARTAN/trunk/arch/amd64/include/mm/memory_init.h /SPARTAN/trunk/arch/amd64/include/smp /SPARTAN/trunk/arch/amd64/src/bios /SPARTAN/trunk/arch/amd64/src/boot/memmap.S /SPARTAN/trunk/arch/amd64/src/drivers /SPARTAN/trunk/arch/amd64/src/fmath.c /SPARTAN/trunk/arch/amd64/src/mm/frame.c /SPARTAN/trunk/arch/amd64/src/mm/memory_init.c /SPARTAN/trunk/arch/amd64/src/mm/tlb.c /SPARTAN/trunk/arch/amd64/src/smp/apic.c /SPARTAN/trunk/arch/amd64/src/smp/ipi.c /SPARTAN/trunk/arch/amd64/src/smp/mps.c /SPARTAN/trunk/arch/amd64/src/smp/smp.c /SPARTAN/trunk/arch/mips32/include/context_offset.h /SPARTAN/trunk/build.amd64 /SPARTAN/trunk/build.mips32 /SPARTAN/trunk/clean.amd64 /SPARTAN/trunk/clean.mips32
/SPARTAN/trunk/Makefile /SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/_link.ld.in /SPARTAN/trunk/arch/amd64/boot/Makefile /SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia32/_link.ld.in /SPARTAN/trunk/arch/ia32/include/barrier.h /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/_link.ld.in /SPARTAN/trunk/arch/mips32/Makefile.inc /SPARTAN/trunk/arch/mips32/_link.ld.in /SPARTAN/trunk/arch/mips32/boot/Makefile /SPARTAN/trunk/arch/mips32/boot/boot.S /SPARTAN/trunk/arch/ppc32/Makefile.inc /SPARTAN/trunk/arch/ppc32/_link.ld.in /SPARTAN/trunk/arch/sparc64/Makefile.inc /SPARTAN/trunk/arch/sparc64/_link.ld.in /SPARTAN/trunk/build.ia32
|
456 |
6856 d 18 h |
jermar |
/SPARTAN/trunk/arch/ia64/src/ |
ia64 work.
Add missing srlz_d().
Remove extra stops.
Coding style cleanups. |
|
/SPARTAN/trunk/arch/ia64/src/drivers/it.c /SPARTAN/trunk/arch/ia64/src/ivt.S
|
455 |
6857 d 6 h |
decky |
/SPARTAN/trunk/ |
new build system upgrade
finished work for IA-32, IA-64, PPC-32, SPARC-64 |
|
/SPARTAN/trunk/arch/ia64/_link.ld.in /SPARTAN/trunk/arch/ppc32/_link.ld.in /SPARTAN/trunk/arch/sparc64/_link.ld.in /SPARTAN/trunk/build.ia64 /SPARTAN/trunk/build.ppc32 /SPARTAN/trunk/build.sparc64 /SPARTAN/trunk/clean.ia32 /SPARTAN/trunk/clean.ia64 /SPARTAN/trunk/clean.ppc32 /SPARTAN/trunk/clean.sparc64
/SPARTAN/trunk/arch/ia64/_link.ld /SPARTAN/trunk/arch/ppc32/_link.ld /SPARTAN/trunk/arch/sparc64/_link.ld
/SPARTAN/trunk/Makefile /SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia32/boot/Makefile /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/boot/Makefile /SPARTAN/trunk/arch/mips32/Makefile.inc /SPARTAN/trunk/arch/mips32/boot/Makefile /SPARTAN/trunk/arch/ppc32/Makefile.inc /SPARTAN/trunk/arch/ppc32/boot/Makefile /SPARTAN/trunk/arch/sparc64/Makefile.inc /SPARTAN/trunk/arch/sparc64/boot/Makefile /SPARTAN/trunk/build.ia32 /SPARTAN/trunk/clean
|
445 |
6857 d 15 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
ia64 work.
Fix SP_DELTA alignment.
Cosmetics. |
|
/SPARTAN/trunk/arch/ia64/include/context.h /SPARTAN/trunk/arch/ia64/include/drivers/it.h /SPARTAN/trunk/arch/ia64/src/interrupt.c /SPARTAN/trunk/arch/ia64/src/ivt.S
|
444 |
6857 d 15 h |
vana |
/SPARTAN/trunk/arch/ia64/ |
Context restore in HEAVYWEIGHT handlers |
|
/SPARTAN/trunk/arch/ia64/include/stack.h /SPARTAN/trunk/arch/ia64/src/interrupt.c /SPARTAN/trunk/arch/ia64/src/ivt.S
|
443 |
6857 d 16 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
ia64 work.
Do not break memory stack alignment in heavyweight interrupt handler.
Reserve scratch area for nested procedure calls on memory stack. |
|
/SPARTAN/trunk/arch/ia64/include/stack.h
/SPARTAN/trunk/arch/ia64/include/context.h /SPARTAN/trunk/arch/ia64/src/ivt.S
|
442 |
6857 d 17 h |
vana |
/SPARTAN/trunk/arch/ia64/src/ |
sp should not be decremented after last save |
|
/SPARTAN/trunk/arch/ia64/src/ivt.S
|
441 |
6857 d 18 h |
jermar |
/SPARTAN/trunk/arch/ia64/src/ |
r12 (stack pointer) must be descremented prior to storing data into new memory stack frame. |
|
/SPARTAN/trunk/arch/ia64/src/ivt.S
|
439 |
6858 d 13 h |
jermar |
/SPARTAN/trunk/arch/ia64/src/ |
Two small ia64 improvements. |
|
/SPARTAN/trunk/arch/ia64/src/ivt.S
|
438 |
6858 d 14 h |
jermar |
/SPARTAN/trunk/arch/ia64/src/ |
ia64 work.
Heavyweight handler should be complete up to the point where it switches back to interrupted RSE context. |
|
/SPARTAN/trunk/arch/ia64/src/ivt.S
|
435 |
6859 d 9 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
ia64 work.
Begin implemention of heavyweight interrupt handler.
Finish implementation of interval timer.
Add some PAL macros. |
|
/SPARTAN/trunk/arch/ia64/include/drivers /SPARTAN/trunk/arch/ia64/include/drivers/it.h /SPARTAN/trunk/arch/ia64/include/pal /SPARTAN/trunk/arch/ia64/include/pal/pal.h /SPARTAN/trunk/arch/ia64/src/drivers /SPARTAN/trunk/arch/ia64/src/drivers/it.c
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/include/interrupt.h /SPARTAN/trunk/arch/ia64/src/context.S /SPARTAN/trunk/arch/ia64/src/ia64.c /SPARTAN/trunk/arch/ia64/src/interrupt.c /SPARTAN/trunk/arch/ia64/src/ivt.S
|