7#define __OFFSET_GENERATOR__
25#define GEN_COMMENT(msg) \
26 printf("\n; %s\n", msg)
28#define GEN_DEFINE(name, val) \
29 printf("%%define %-40s 0x%lX\n", #name, (uint64_t)(val))
31#define GEN_OFFSET(struct_name, member) \
32 printf("%%define %-40s 0x%lX\n", #struct_name "_" #member, offsetof(struct_name, member))
34#define GEN_SIZE(struct_name) \
35 printf("%%define SIZEOF_%-33s 0x%lX\n", #struct_name, sizeof(struct_name))
38 printf(
"; ===============================================================\n");
39 printf(
"; AUTOMATICALLY GENERATED FILE - DO NOT EDIT MANUALLY\n");
40 printf(
"; Generated by gen_offsets.c\n");
41 printf(
"; ===============================================================\n\n");
49 GEN_COMMENT(
"PROCESSOR Structure Offsets (gs:[...])");
66 GEN_COMMENT(
"TRAP_FRAME Offsets (Context Saving/Restoring)");
189#ifdef MT_NO_PREEMPTION
struct _EPROCESS EPROCESS
struct _TRAP_FRAME TRAP_FRAME
struct _IPROCESS IPROCESS
struct _PROCESSOR PROCESSOR
#define GEN_OFFSET(struct_name, member)
#define GEN_DEFINE(name, val)
#define GEN_SIZE(struct_name)
#define IA32_KERNEL_GS_BASE
@ MANUALLY_INITIATED_CRASH
@ IRQL_NOT_GREATER_OR_EQUAL
@ ATTEMPTED_SWITCH_FROM_DPC
@ GENERAL_PROTECTION_FAULT
#define PhysicalMemoryOffset
struct _SPINLOCK SPINLOCK