mirror of
https://github.com/reactos/reactos.git
synced 2026-09-11 20:32:22 +08:00
7b6dfd6be48fd5bdb5590db3d747e248be0fcf06
- Rewrite trap handler exit stubs in pure assembly, remove gcc inline assembly. - Replace jmp to C handler with KiCallHandler macro, that expands to jmp on release builds for speed and call on debug builds to fix backtraces. - Unroll the Syscall handler loop and use volatile keyword when reloading TrapFrame and DescriptorTable from the new stack to prevent the compiler from optimizing it away / moving it out of the loop. - Bugcheck in KiTrap0DHandler, if the fault couldn't be resolved. - Remove handling of V86 traps and edited traps in KiServiceExit, ASSERT to make sure they never happen. - Replace code patching of the syscall exit handler with a function pointer. - Use __debugbreak() instead of while(TRUE) in KiExitTrapDebugChecks svn path=/trunk/; revision=45774
…
Languages
C
86.5%
C++
10.6%
Python
0.8%
Assembly
0.5%
CMake
0.5%
Other
0.8%