Rev |
Age |
Author |
Path |
Log message |
Diff |
481 |
6817 d 12 h |
vana |
/SPARTAN/trunk/arch/ia32/include/ |
Revert of =m in ia32 atomic operations. In according to gcc docs +m should be right but as Jakub said it is not working
with amd64 but =m is... and I'm not able to build tools for that platform to test it now :-( . (Maybe bug in gcc ???) |
|
477 |
6818 d 20 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. |
|
475 |
6819 d 20 h |
jermar |
/SPARTAN/trunk/ |
Define atomic_t type. |
|
470 |
6821 d 9 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. |
|
469 |
6821 d 16 h |
jermar |
/SPARTAN/trunk/arch/ia32/include/ |
Get the memory barriers on ia32 right. |
|
468 |
6821 d 17 h |
decky |
/SPARTAN/trunk/ |
fix IA-32 fences (1/2) |
|
458 |
6821 d 22 h |
decky |
/SPARTAN/trunk/ |
make configuration variables usage consistent |
|
457 |
6821 d 22 h |
decky |
/SPARTAN/trunk/ |
new build system almost finished |
|
452 |
6822 d 14 h |
decky |
/SPARTAN/trunk/ |
major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient |
|
432 |
6826 d 14 h |
jermar |
/SPARTAN/trunk/arch/ |
IA-64 work.
Add some asm functions for manipulation with PSR, AR and CR registers. |
|
423 |
6833 d 18 h |
decky |
/SPARTAN/trunk/ |
Enable/disable CPU memory barriers at compile time |
|
422 |
6835 d 1 h |
jermar |
/SPARTAN/trunk/ |
Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out. |
|
419 |
6836 d 14 h |
bondari |
/SPARTAN/trunk/arch/ |
Memory inline functions for AMD64.
memcmp and memcpy are redefined according to norma |
|
414 |
6843 d 1 h |
jermar |
/SPARTAN/trunk/ |
Create generic context_save() and context_restore().
These two functions are defined inline and only call context_save_arch() and context_restore_arch(), respectively.
The main purpose of this is to enable centralized commenting of these important and tricky functions. |
|
413 |
6843 d 11 h |
jermar |
/SPARTAN/trunk/ |
Rename cpu_priority_{high|low|restore|read} functions to interrupts_{disable|enable|restore|read}.
Rename pri_t to ipl_t (Interrupt Priority Level).
Rename thread_t::pri to thread_t::priority. |
|
408 |
6845 d 20 h |
decky |
/SPARTAN/trunk/ |
IA32 has_cpuid() inline
minor indentation fixes |
|
393 |
6855 d 14 h |
bondari |
/SPARTAN/trunk/arch/ia32/include/ |
Comments fixed |
|
392 |
6855 d 14 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
Last inline functions for IA-32 |
|
391 |
6856 d 12 h |
jermar |
/SPARTAN/trunk/ |
mips32 memory management work.
TLB Refill Exception implemented (passed basic testing).
Remove bit g from struct entry_hi.
Add generic find_mapping().
Add asid to vm_t type, define asid_t to hide architecture specific differences.
Implement ASID allocation for mips32, dummy for other architectures.
Add THE->vm (a.k.a. VM).
Add vm_install_arch().
Move pte_t definition to arch/types.h on each architecture.
Fix PTL manipulating functions on mips32 to shift pfn by 12 instead of by 14.
Fix tlb_init_arch() to initialize all entries.
Other.
Remove unnecessary header files from arch.h
Add missing headers here and there.
Remove two unnecessary ld flags from mips32 makefile. |
|
390 |
6856 d 12 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
ia-32 memcmp inline |
|
389 |
6856 d 23 h |
jermar |
/SPARTAN/trunk/ |
MIPS work.
Fix some name inconsistencies between cp0 functions' declarations and definitions.
Add and implement tlb_init_arch().
Add tlb_modified() exception handler.
Other architectures: add dummy tlb_init_arch(). |
|
363 |
6871 d 13 h |
jermar |
/SPARTAN/trunk/arch/ |
Fix copyright notices. |
|
361 |
6871 d 14 h |
bondari |
/SPARTAN/trunk/ |
Memory routines per-arch declations for future implementation |
|
359 |
6872 d 12 h |
bondari |
/SPARTAN/trunk/arch/ia32/include/ |
I think some comments to the algoritm would be helful |
|
358 |
6872 d 13 h |
bondari |
/SPARTAN/trunk/ |
built-in memcpy is not used anymore on IA-32.
IA-32 memcpy is now fast and inline. |
|
356 |
6872 d 15 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
Get from port functions are now inline |
|
354 |
6872 d 20 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
Define structures for frame zones and frames.
Add some comments. |
|
353 |
6873 d 1 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
Outb, outw, outl are now inline functions |
|
352 |
6873 d 13 h |
bondari |
/SPARTAN/trunk/arch/ia32/ |
outb inline function |
|
348 |
6877 d 13 h |
jermar |
/SPARTAN/trunk/arch/ |
Optimize some assembler functions. |
|
338 |
6879 d 19 h |
jermar |
/SPARTAN/trunk/ |
Avoid code duplication by creating generic byteorder.h.
Some naming changes in swap functions. |
|
332 |
6879 d 21 h |
palkovsky |
/SPARTAN/trunk/ |
Updated symtab so that it works correctly with BE architectures.
Changed compiler for BE MIPS to be mips-sgi-irix5, because
mipsel -EB does not behave correctly.
Doc updates to amd64.
Added ARC BIOS support to MIPS architecture. Putchar works correctly,
kernel passed FPU & some rwlock tests. |
|
328 |
6880 d 23 h |
jermar |
/SPARTAN/trunk/ |
IA-32 can be now cross-compiled by ./build.ia32 cross.
Unify IA-32 Makefile.inc and Makefile.inc.cross.
Update doc/requirements.
Small changes elsewere. |
|
315 |
6884 d 2 h |
jermar |
/SPARTAN/trunk/arch/ia32/ |
Make IA-32 userspace stack be aligned on doubleword boundary.
In userspace(), mark "eax" as clobbered register. |
|
312 |
6884 d 12 h |
jermar |
/SPARTAN/trunk/arch/ia32/ |
According to IA-32 ABI, %edx and %ecx don't have to be saved accross function calls.
Remove these registers from context_t and adjust context_save() and context_restore() to make use of this fact. |
|
309 |
6885 d 0 h |
palkovsky |
/SPARTAN/trunk/ |
Added architecture independent hooks for fpu lazy context switching.
It is enabled by defining FPU_LAZY |
|
303 |
6885 d 18 h |
palkovsky |
/SPARTAN/trunk/ |
|
|
300 |
6885 d 21 h |
palkovsky |
/SPARTAN/trunk/arch/ia32/ |
Backported AMD64 linker and boot changes back to IA32. |
|
292 |
6886 d 11 h |
jermar |
/SPARTAN/trunk/ |
Add byteorder.h to support conversions between different endianesses.
Add native_le2host().
Use native_le2host() in get_symtab_entry(). |
|
282 |
6887 d 2 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed gdtr naming issues after ia32 changes.
Fixed stack alignment on new thread to by multiple of 16,
we are now ABI-correct and we do not #GP on va_arg to boot.
Fixed bad exception register names reporting.
Fixed bad _hardcoded_load_addr, which caused allocation of kernel text
frames. |
|