1 #ifndef __NTOSKRNL_INCLUDE_INTERNAL_I386_KE_H
2 #define __NTOSKRNL_INCLUDE_INTERNAL_I386_KE_H
9 extern ULONG Ke386CacheAlignment
;
11 #define IMAGE_FILE_MACHINE_ARCHITECTURE IMAGE_FILE_MACHINE_I386
14 // INT3 is 1 byte long
16 #define KD_BREAKPOINT_SIZE 1
19 // Macros for getting and setting special purpose registers in portable code
21 #define KeGetContextPc(Context) \
24 #define KeSetContextPc(Context, ProgramCounter) \
25 ((Context)->Eip = (ProgramCounter))
27 #define KeGetTrapFramePc(TrapFrame) \
30 #define KeGetContextReturnRegister(Context) \
33 #define KeSetContextReturnRegister(Context, ReturnValue) \
34 ((Context)->Eax = (ReturnValue))
50 KiGetCacheInformation(VOID
);
66 KiSetProcessorType(VOID
);
70 KiGetFeatureBits(VOID
);
72 #ifdef _NTOSKRNL_ /* FIXME: Move flags above to NDK instead of here */
75 KiThreadStartup(PKSYSTEM_ROUTINE SystemRoutine
,
76 PKSTART_ROUTINE StartRoutine
,
79 KTRAP_FRAME TrapFrame
);
83 #endif /* __NTOSKRNL_INCLUDE_INTERNAL_I386_KE_H */