- Change CPUID to match the old Ki386Cpuid and take 4 output arguments instead of...
authorStefan Ginsberg <stefanginsberg@gmail.com>
Sun, 27 Sep 2009 10:09:38 +0000 (10:09 +0000)
committerStefan Ginsberg <stefanginsberg@gmail.com>
Sun, 27 Sep 2009 10:09:38 +0000 (10:09 +0000)
commit8fa95b6a9c3988c854ea399fef352854ad0e45d6
tree8a69b5a41e664efc32848697b9f59c9f8e1b9eb0
parent733f6cb89bc30f6e1fce82f3f801267130bea964
- Change CPUID to match the old Ki386Cpuid and take 4 output arguments instead of an array. This way we save some stack when using a dummy cpuid for synchronization and can query only the registers we want in the case we don't want all 4.
- Simplify Ke386GetTr and Ke386GetLocalDescriptorTable to return by value instead of reference.
- Make RDMSR smaller by making it fastcall as rdmsr takes its argument in ecx.
- Fix KiGetCacheInformation -- it only handled the Intel and AMD case.
- Replace Ke386HaltProcessor with __halt.
- KiHaltProcessorDpcRoutine: Always halt the processor for the architectures we support for consistency.
- Clean up x86 and PPC headers from deprecated stuff.
- Fix broken LOCK undefine in v86m_sup.S -- LOCK is used both in a macro and the code, so only undefine it where required and redefine it after it is used (this worked because LOCK was interpreted as lock).

Get rid of KeArch*:
- Rename KeArchInitThreadWithContext to KiInitializeContextThread and use the same name for all architectures.
- Kill KeArchHaltProcessor. Use __halt and KeArmHaltProcessor directly instead.
- Use Ke386FnInit instead of KeArchFnInit -- it is only used for x86.

svn path=/trunk/; revision=43180
21 files changed:
reactos/hal/halx86/generic/processor.c
reactos/hal/halx86/generic/reboot.c
reactos/include/crt/mingw32/intrin_x86.h
reactos/include/crt/msc/intrin.h
reactos/ntoskrnl/config/i386/cmhardwr.c
reactos/ntoskrnl/ex/shutdown.c
reactos/ntoskrnl/include/internal/arm/ke.h
reactos/ntoskrnl/include/internal/i386/intrin_i.h
reactos/ntoskrnl/include/internal/i386/ke.h
reactos/ntoskrnl/include/internal/ke.h
reactos/ntoskrnl/include/internal/ke_x.h
reactos/ntoskrnl/include/internal/powerpc/ke.h
reactos/ntoskrnl/kdbg/kdb_cli.c
reactos/ntoskrnl/ke/arm/thrdini.c
reactos/ntoskrnl/ke/bug.c
reactos/ntoskrnl/ke/i386/cpu.c
reactos/ntoskrnl/ke/i386/kiinit.c
reactos/ntoskrnl/ke/i386/thrdini.c
reactos/ntoskrnl/ke/i386/v86m_sup.S
reactos/ntoskrnl/ke/powerpc/thrdini.c
reactos/ntoskrnl/ke/thrdobj.c