haiku/headers/private/kernel/arch
Ingo Weinhold 34b3b26b3b Merged branch haiku/branches/developer/bonefish/optimization revision
23139 into trunk, with roughly the following changes (for details svn
log the branch):
* The int 99 syscall handler is now fully in assembly.
* Added a sysenter/sysexit handler and use it on Pentiums that support
  it (via commpage).
* Got rid of i386_handle_trap(). A bit of functionality was moved into
  the assembly handler which now uses a jump table to call C functions
  handling the respective interrupt.
* Some optimizations to get user debugger support code out of the
  interrupt handling path.
* Introduced a thread::flags fields which allows to skip handling of
  rare events (signals, user debug enabling/disabling) on the
  common interrupt handling path.
* Got rid of the explicit iframe stack. The iframes can still be
  retrieved by iterating through the stack frames.
* Made the commpage an architecture independent feature. It's used for
  the real time data stuff (instead of creating a separate area).
* The x86 CPU modules can now provide processor optimized versions for
  common functions (currently memcpy() only). They are used in the
  kernel and are provided to the userland via commpage entries.
* Introduced build system feature allowing easy use of C structure
  member offsets in assembly code.

Changes after merging:
* Fixed merge conflict in src/system/kernel/arch/x86/arch_debug.cpp
  (caused by refactoring and introduction of "call" debugger command).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 00:36:44 +00:00
..
alpha It is accomplished ... 2002-07-09 12:24:59 +00:00
m68k Move mmu definitions to a header so the bootloader can also use them. 2007-12-29 14:44:47 +00:00
ppc More regs in m68k iframe. 2007-10-26 14:28:54 +00:00
sh4 Merged changes from branch build_system_redesign at revision 14573. 2005-10-29 16:27:43 +00:00
sparc Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
x86 Merged branch haiku/branches/developer/bonefish/optimization revision 2008-01-11 00:36:44 +00:00
cpu.h yet another fix for #1018, which has at this point blossomed into a reorg of how AP cpus are initialized. 2007-02-19 00:11:24 +00:00
debug_console.h * Added the opportunity to add temporary debug interrupt handlers for 2006-06-12 22:24:53 +00:00
debug.h Cleanup of the debug stuff, prepared for blue screen debugging. 2005-05-29 13:01:38 +00:00
elf.h Made C++ safe. 2006-01-11 14:36:43 +00:00
int.h Added [arch_]int_post_device_manager() which is invoked after 2006-02-07 02:50:32 +00:00
platform.h Implemented first basic APM driver. Only tested with QEMU so far, that's why 2006-01-28 18:11:20 +00:00
real_time_clock.h The real_time_data structure contains an architecture specific 2006-01-04 02:17:59 +00:00
smp.h Applied NewOS change 1914: moved APIC setup into the kernel due to a 2004-03-14 22:54:00 +00:00
system_info.h Added our first x86-only syscall for get_cpuid(). 2004-12-01 03:54:23 +00:00
thread_types.h Replaced arch/thread_struct.h with arch/thread_types.h, and renamed 2005-12-20 16:07:27 +00:00
thread.h Merged branch haiku/branches/developer/bonefish/optimization revision 2008-01-11 00:36:44 +00:00
timer.h Replaced timer.h with a cpp safe version. 2004-03-14 21:08:25 +00:00
user_debugger.h Merged branch haiku/branches/developer/bonefish/optimization revision 2008-01-11 00:36:44 +00:00
vm_translation_map.h - the arch_vm_translation_map.c exported functions now have the arch_ prefix 2004-10-19 23:19:10 +00:00
vm_types.h Preparation for MTRR support, code is completely untested, though. 2005-12-12 17:04:36 +00:00
vm.h * vm.h no longer includes vm_types.h - only those that actually need access 2007-09-27 12:21:33 +00:00