- Support INIT section pragmas for msvc. Patch by Brezenbak. Modified: trunk/reactos/ntoskrnl/cc/view.c Modified: trunk/reactos/ntoskrnl/cm/import.c Modified: trunk/reactos/ntoskrnl/cm/registry.c Modified: trunk/reactos/ntoskrnl/ex/callback.c Modified: trunk/reactos/ntoskrnl/ex/event.c Modified: trunk/reactos/ntoskrnl/ex/evtpair.c Modified: trunk/reactos/ntoskrnl/ex/init.c Modified: trunk/reactos/ntoskrnl/ex/lookas.c Modified: trunk/reactos/ntoskrnl/ex/mutant.c Modified: trunk/reactos/ntoskrnl/ex/profile.c Modified: trunk/reactos/ntoskrnl/ex/sem.c Modified: trunk/reactos/ntoskrnl/ex/time.c Modified: trunk/reactos/ntoskrnl/ex/timer.c Modified: trunk/reactos/ntoskrnl/ex/uuid.c Modified: trunk/reactos/ntoskrnl/ex/win32k.c Modified: trunk/reactos/ntoskrnl/ex/work.c Modified: trunk/reactos/ntoskrnl/fs/filelock.c Modified: trunk/reactos/ntoskrnl/fs/notify.c Modified: trunk/reactos/ntoskrnl/fs/util.c Modified: trunk/reactos/ntoskrnl/inbv/inbv.c Modified: trunk/reactos/ntoskrnl/io/arcname.c Modified: trunk/reactos/ntoskrnl/io/bootlog.c Modified: trunk/reactos/ntoskrnl/io/driver.c Modified: trunk/reactos/ntoskrnl/io/fs.c Modified: trunk/reactos/ntoskrnl/io/iomgr.c Modified: trunk/reactos/ntoskrnl/io/plugplay.c Modified: trunk/reactos/ntoskrnl/io/pnpmgr.c Modified: trunk/reactos/ntoskrnl/io/pnpnotify.c Modified: trunk/reactos/ntoskrnl/io/vpb.c Modified: trunk/reactos/ntoskrnl/kd/kdinit.c Modified: trunk/reactos/ntoskrnl/ke/bug.c Modified: trunk/reactos/ntoskrnl/ke/clock.c Modified: trunk/reactos/ntoskrnl/ke/device.c Modified: trunk/reactos/ntoskrnl/ke/dpc.c Modified: trunk/reactos/ntoskrnl/ke/i386/exp.c Modified: trunk/reactos/ntoskrnl/ke/i386/kernel.c Modified: trunk/reactos/ntoskrnl/ke/i386/tss.c Modified: trunk/reactos/ntoskrnl/ke/i386/vdm.c Modified: trunk/reactos/ntoskrnl/ke/main.c Modified: trunk/reactos/ntoskrnl/ke/usercall.c Modified: trunk/reactos/ntoskrnl/ldr/loader.c Modified: trunk/reactos/ntoskrnl/lpc/port.c Modified: trunk/reactos/ntoskrnl/mm/aspace.c Modified: trunk/reactos/ntoskrnl/mm/balance.c Modified: trunk/reactos/ntoskrnl/mm/freelist.c Modified: trunk/reactos/ntoskrnl/mm/i386/page.c Modified: trunk/reactos/ntoskrnl/mm/marea.c Modified: trunk/reactos/ntoskrnl/mm/mdl.c Modified: trunk/reactos/ntoskrnl/mm/mminit.c Modified: trunk/reactos/ntoskrnl/mm/npool.c Modified: trunk/reactos/ntoskrnl/mm/pagefile.c Modified: trunk/reactos/ntoskrnl/mm/pageop.c Modified: trunk/reactos/ntoskrnl/mm/ppool.c Modified: trunk/reactos/ntoskrnl/mm/process.c Modified: trunk/reactos/ntoskrnl/mm/rmap.c Modified: trunk/reactos/ntoskrnl/mm/section.c Modified: trunk/reactos/ntoskrnl/ob/namespc.c Modified: trunk/reactos/ntoskrnl/ob/symlink.c Modified: trunk/reactos/ntoskrnl/po/power.c Modified: trunk/reactos/ntoskrnl/ps/idle.c Modified: trunk/reactos/ntoskrnl/ps/job.c Modified: trunk/reactos/ntoskrnl/ps/locale.c Modified: trunk/reactos/ntoskrnl/ps/process.c Modified: trunk/reactos/ntoskrnl/ps/psmgr.c Modified: trunk/reactos/ntoskrnl/rtl/nls.c Modified: trunk/reactos/ntoskrnl/se/acl.c Modified: trunk/reactos/ntoskrnl/se/luid.c Modified: trunk/reactos/ntoskrnl/se/priv.c Modified: trunk/reactos/ntoskrnl/se/sd.c Modified: trunk/reactos/ntoskrnl/se/semgr.c Modified: trunk/reactos/ntoskrnl/se/sid.c Modified: trunk/reactos/ntoskrnl/se/token.c _____
Modified: trunk/reactos/ntoskrnl/cc/view.c --- trunk/reactos/ntoskrnl/cc/view.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/cc/view.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -36,6 +36,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, CcInitView) +#endif + /* GLOBALS *******************************************************************/
/* _____
Modified: trunk/reactos/ntoskrnl/cm/import.c --- trunk/reactos/ntoskrnl/cm/import.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/cm/import.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -16,6 +16,10 @@
#include "cm.h"
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, CmImportHardwareHive) +#endif + /* GLOBALS ******************************************************************/
static BOOLEAN CmiHardwareHiveImported = FALSE; _____
Modified: trunk/reactos/ntoskrnl/cm/registry.c --- trunk/reactos/ntoskrnl/cm/registry.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/cm/registry.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -16,6 +16,13 @@
#include "cm.h"
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, CmInitHives) +#pragma alloc_text(INIT, CmInitializeRegistry) +#pragma alloc_text(INIT, CmInit2) +#endif + + /* GLOBALS ******************************************************************/
POBJECT_TYPE CmiKeyType = NULL; _____
Modified: trunk/reactos/ntoskrnl/ex/callback.c --- trunk/reactos/ntoskrnl/ex/callback.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/callback.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -12,6 +12,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeCallbacks) +#endif + + /* TYPES ********************************************************************/
/* Mapping for Callback Object */ _____
Modified: trunk/reactos/ntoskrnl/ex/event.c --- trunk/reactos/ntoskrnl/ex/event.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/event.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeEventImplementation) +#endif + /* GLOBALS *******************************************************************/
POBJECT_TYPE ExEventObjectType = NULL; _____
Modified: trunk/reactos/ntoskrnl/ex/evtpair.c --- trunk/reactos/ntoskrnl/ex/evtpair.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/evtpair.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -16,6 +16,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeEventPairImplementation) +#endif + /* GLOBALS *******************************************************************/
POBJECT_TYPE ExEventPairObjectType = NULL; _____
Modified: trunk/reactos/ntoskrnl/ex/init.c --- trunk/reactos/ntoskrnl/ex/init.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/init.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -32,6 +32,18 @@
VOID PspPostInitSystemProcess(VOID);
+static VOID INIT_FUNCTION InitSystemSharedUserPage (PCSZ ParameterLine); +VOID INIT_FUNCTION ExpDisplayNotice(VOID); +INIT_FUNCTION NTSTATUS ExpLoadInitialProcess(PHANDLE ProcessHandle, PHANDLE ThreadHandle); + +#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, InitSystemSharedUserPage) +#pragma alloc_text(INIT, ExpDisplayNotice) +#pragma alloc_text(INIT, ExpLoadInitialProcess) +#pragma alloc_text(INIT, ExpInitializeExecutive) +#pragma alloc_text(INIT, ExInit2) +#endif + /* FUNCTIONS ****************************************************************/
static _____
Modified: trunk/reactos/ntoskrnl/ex/lookas.c --- trunk/reactos/ntoskrnl/ex/lookas.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/lookas.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,6 +15,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitLookasideLists) +#endif + /* GLOBALS *******************************************************************/
LIST_ENTRY ExpNonPagedLookasideListHead; _____
Modified: trunk/reactos/ntoskrnl/ex/mutant.c --- trunk/reactos/ntoskrnl/ex/mutant.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/mutant.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,6 +15,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeMutantImplementation) +#endif + #ifndef MUTANT_INCREMENT #define MUTANT_INCREMENT 1 #endif _____
Modified: trunk/reactos/ntoskrnl/ex/profile.c --- trunk/reactos/ntoskrnl/ex/profile.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/profile.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -13,6 +13,10 @@
#include <ntoskrnl.h> #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeProfileImplementation) +#endif + /* FIXME: NDK This structure is a *GUESS* -- Alex */ typedef struct _EPROFILE { PEPROCESS Process; _____
Modified: trunk/reactos/ntoskrnl/ex/sem.c --- trunk/reactos/ntoskrnl/ex/sem.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/sem.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeSemaphoreImplementation() +#endif + /* GLOBALS ******************************************************************/
POBJECT_TYPE ExSemaphoreObjectType; _____
Modified: trunk/reactos/ntoskrnl/ex/time.c --- trunk/reactos/ntoskrnl/ex/time.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/time.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -17,6 +17,10 @@
#define TICKSPERMINUTE 600000000
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitTimeZoneInfo) +#endif + /* GLOBALS ******************************************************************/
/* Note: Bias[minutes] = UTC - local time */ _____
Modified: trunk/reactos/ntoskrnl/ex/timer.c --- trunk/reactos/ntoskrnl/ex/timer.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/timer.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeTimerImplementation) +#endif + + /* TYPES ********************************************************************/
/* Executive Timer Object */ _____
Modified: trunk/reactos/ntoskrnl/ex/uuid.c --- trunk/reactos/ntoskrnl/ex/uuid.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/uuid.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -26,7 +26,11 @@
#define SECS_15_OCT_1582_TO_1601 ((17 + 30 + 31 + 365 * 18 + 5) * SECSPERDAY) #define TICKS_15_OCT_1582_TO_1601 ((ULONGLONG)SECS_15_OCT_1582_TO_1601 * TICKSPERSEC)
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitUuids) +#endif
+ /* GLOBALS ****************************************************************/
static FAST_MUTEX UuidMutex; _____
Modified: trunk/reactos/ntoskrnl/ex/win32k.c --- trunk/reactos/ntoskrnl/ex/win32k.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/win32k.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -13,6 +13,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpWin32kInit) +#endif + /* DATA **********************************************************************/
POBJECT_TYPE ExWindowStationObjectType = NULL; _____
Modified: trunk/reactos/ntoskrnl/ex/work.c --- trunk/reactos/ntoskrnl/ex/work.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ex/work.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, ExpInitializeWorkerThreads) +#endif + /* DEFINES *******************************************************************/
#define NUMBER_OF_WORKER_THREADS (5) _____
Modified: trunk/reactos/ntoskrnl/fs/filelock.c --- trunk/reactos/ntoskrnl/fs/filelock.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/fs/filelock.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -12,6 +12,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, FsRtlpInitFileLockingImplementation) +#endif + + /* NOTE: I'm not using resource syncronization here, since FsRtlFastCheckLockForRead/Write _____
Modified: trunk/reactos/ntoskrnl/fs/notify.c --- trunk/reactos/ntoskrnl/fs/notify.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/fs/notify.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -13,7 +13,11 @@
//#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, FsRtlpInitNotifyImplementation) +#endif
+ PAGED_LOOKASIDE_LIST NotifyEntryLookaside;
typedef struct _NOTIFY_ENTRY @@ -61,7 +65,7 @@
static -inline +__inline BOOLEAN FsRtlpIsUnicodePath( PSTRING Path @@ -593,7 +597,7 @@
static -inline +__inline VOID FsRtlpCopyName( PFILE_NOTIFY_INFORMATION CurrentEntry, _____
Modified: trunk/reactos/ntoskrnl/fs/util.c --- trunk/reactos/ntoskrnl/fs/util.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/fs/util.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -21,9 +21,14 @@
/* GLOBALS *******************************************************************/
BOOLEAN STDCALL MmIsFileAPagingFile(PFILE_OBJECT FileObject); +VOID STDCALL INIT_FUNCTION RtlpInitializeResources(VOID); static ULONG FsRtlpAllocatedResources = 0; static PERESOURCE FsRtlpResources;
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, RtlpInitializeResources) +#endif + /* PRIVATE FUNCTIONS**********************************************************/
VOID _____
Modified: trunk/reactos/ntoskrnl/inbv/inbv.c --- trunk/reactos/ntoskrnl/inbv/inbv.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/inbv/inbv.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,7 +15,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, InbvEnableBootDriver) +#endif
+ /* GLOBALS *******************************************************************/
/* DATA **********************************************************************/ _____
Modified: trunk/reactos/ntoskrnl/io/arcname.c --- trunk/reactos/ntoskrnl/io/arcname.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/arcname.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,6 +15,38 @@
#define NDEBUG #include <internal/debug.h>
+static NTSTATUS +STDCALL INIT_FUNCTION +DiskQueryRoutine(PWSTR ValueName, + ULONG ValueType, + PVOID ValueData, + ULONG ValueLength, + PVOID Context, + PVOID EntryContext); + +static VOID INIT_FUNCTION +IopEnumerateBiosDisks(PLIST_ENTRY ListHead); + +static VOID INIT_FUNCTION +IopEnumerateDisks(PLIST_ENTRY ListHead); + +static NTSTATUS INIT_FUNCTION +IopAssignArcNamesToDisk(PDEVICE_OBJECT DeviceObject, ULONG RDisk, ULONG DiskNumber); + +static NTSTATUS INIT_FUNCTION +IopCheckCdromDevices(PULONG DeviceNumber); + +#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, DiskQueryRoutine) +#pragma alloc_text(INIT, IopEnumerateBiosDisks) +#pragma alloc_text(INIT, IopEnumerateDisks) +#pragma alloc_text(INIT, IopAssignArcNamesToDisk) +#pragma alloc_text(INIT, IoCreateArcNames) +#pragma alloc_text(INIT, IopCheckCdromDevices) +#pragma alloc_text(INIT, IoCreateSystemRootLink) +#endif + + /* MACROS *******************************************************************/
#define FS_VOLUME_BUFFER_SIZE (MAX_PATH + sizeof(FILE_FS_VOLUME_INFORMATION)) _____
Modified: trunk/reactos/ntoskrnl/io/bootlog.c --- trunk/reactos/ntoskrnl/io/bootlog.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/bootlog.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IopInitBootLog) +#pragma alloc_text(INIT, IopStartBootLog() +#endif
/* GLOBALS ******************************************************************/
_____
Modified: trunk/reactos/ntoskrnl/io/driver.c --- trunk/reactos/ntoskrnl/io/driver.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/driver.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -19,11 +19,6 @@
extern ULONG KeTickCount; extern BOOLEAN SetupMode;
-NTSTATUS -LdrProcessModule(PVOID ModuleLoadBase, - PUNICODE_STRING ModuleName, - PLDR_DATA_TABLE_ENTRY *ModuleObject); - typedef struct _SERVICE_GROUP { LIST_ENTRY GroupListEntry; @@ -80,6 +75,41 @@ VOID STDCALL IopDeleteDriver(PVOID ObjectBody);
+NTSTATUS +LdrProcessModule(PVOID ModuleLoadBase, + PUNICODE_STRING ModuleName, + PLDR_DATA_TABLE_ENTRY *ModuleObject); + +VOID +FASTCALL +INIT_FUNCTION +IopDisplayLoadingMessage(PVOID ServiceName, + BOOLEAN Unicode); + +static VOID INIT_FUNCTION +MiFreeBootDriverMemory(PVOID StartAddress, ULONG Length); + +NTSTATUS FASTCALL INIT_FUNCTION +IopInitializeBuiltinDriver( + PDEVICE_NODE ModuleDeviceNode, + PVOID ModuleLoadBase, + PCHAR FileName, + ULONG ModuleLength); + +static INIT_FUNCTION NTSTATUS +IopLoadDriver(PSERVICE Service); + +#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IopInitDriverImplementation) +#pragma alloc_text(INIT, IopDisplayLoadingMessage) +#pragma alloc_text(INIT, IoCreateDriverList) +#pragma alloc_text(INIT, IoDestroyDriverList) +#pragma alloc_text(INIT, MiFreeBootDriverMemory) +#pragma alloc_text(INIT, IopInitializeBuiltinDriver) +#pragma alloc_text(INIT, IopLoadDriver) +#endif + + /* PRIVATE FUNCTIONS **********************************************************/
VOID @@ -1153,7 +1183,7 @@ return(STATUS_SUCCESS); }
-VOID STATIC INIT_FUNCTION +static VOID INIT_FUNCTION MiFreeBootDriverMemory(PVOID StartAddress, ULONG Length) { ULONG i; _____
Modified: trunk/reactos/ntoskrnl/io/fs.c --- trunk/reactos/ntoskrnl/io/fs.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/fs.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,9 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IoInitFileSystemImplementation) +#endif
/* TYPES *******************************************************************/
_____
Modified: trunk/reactos/ntoskrnl/io/iomgr.c --- trunk/reactos/ntoskrnl/io/iomgr.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/iomgr.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -40,6 +40,18 @@
NPAGED_LOOKASIDE_LIST IoLargeIrpLookaside; NPAGED_LOOKASIDE_LIST IoSmallIrpLookaside;
+VOID INIT_FUNCTION IopInitLookasideLists(VOID); + +#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IoInitCancelHandling) +#pragma alloc_text(INIT, IoInitShutdownNotification) +#pragma alloc_text(INIT, IopInitLookasideLists) +#pragma alloc_text(INIT, IoInit) +#pragma alloc_text(INIT, IoInit2) +#pragma alloc_text(INIT, IoInit3) +#endif + + /* INIT FUNCTIONS ************************************************************/
VOID _____
Modified: trunk/reactos/ntoskrnl/io/plugplay.c --- trunk/reactos/ntoskrnl/io/plugplay.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/plugplay.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,9 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IopInitPlugPlayEvents) +#endif
typedef struct _PNP_EVENT_ENTRY { _____
Modified: trunk/reactos/ntoskrnl/io/pnpmgr.c --- trunk/reactos/ntoskrnl/io/pnpmgr.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/pnpmgr.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -97,7 +97,16 @@
0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D, };
+static NTSTATUS INIT_FUNCTION +IopSetRootDeviceInstanceData(PDEVICE_NODE DeviceNode);
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IopSetRootDeviceInstanceData) +#pragma alloc_text(INIT, PnpInit) +#pragma alloc_text(INIT, PnpInit2) +#endif + + /* FUNCTIONS *****************************************************************/
PDEVICE_NODE FASTCALL _____
Modified: trunk/reactos/ntoskrnl/io/pnpnotify.c --- trunk/reactos/ntoskrnl/io/pnpnotify.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/pnpnotify.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,6 +15,11 @@
#include <ntoskrnl.h> #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IopInitPnpNotificationImplementation) +#endif + + /* TYPES *******************************************************************/
typedef struct _PNP_NOTIFY_ENTRY _____
Modified: trunk/reactos/ntoskrnl/io/vpb.c --- trunk/reactos/ntoskrnl/io/vpb.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/io/vpb.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, IoInitVpbImplementation) +#endif + + /* GLOBALS *******************************************************************/
static KSPIN_LOCK IoVpbLock; _____
Modified: trunk/reactos/ntoskrnl/kd/kdinit.c --- trunk/reactos/ntoskrnl/kd/kdinit.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/kd/kdinit.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -11,6 +11,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, KdInitSystem) +#endif + + /* Make bochs debug output in the very early boot phase available */ //#define AUTO_ENABLE_BOCHS
_____
Modified: trunk/reactos/ntoskrnl/ke/bug.c --- trunk/reactos/ntoskrnl/ke/bug.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/bug.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,6 +15,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, KiInitializeBugCheck) +#endif + /* GLOBALS ******************************************************************/
static LIST_ENTRY BugcheckCallbackListHead = {NULL,NULL}; _____
Modified: trunk/reactos/ntoskrnl/ke/clock.c --- trunk/reactos/ntoskrnl/ke/clock.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/clock.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -20,6 +20,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, KiInitializeSystemClock) +#endif + /* GLOBALS ****************************************************************/
/* _____
Modified: trunk/reactos/ntoskrnl/ke/device.c --- trunk/reactos/ntoskrnl/ke/device.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/device.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -11,6 +11,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, KeFindConfigurationEntry) +#pragma alloc_text(INIT, KeFindConfigurationNextEntry) +#endif + /* * @implemented */ _____
Modified: trunk/reactos/ntoskrnl/ke/dpc.c --- trunk/reactos/ntoskrnl/ke/dpc.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/dpc.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -21,6 +21,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, KeInitDpc) +#endif + + /* TYPES *******************************************************************/
#define MAX_QUANTUM 0x7F _____
Modified: trunk/reactos/ntoskrnl/ke/i386/exp.c --- trunk/reactos/ntoskrnl/ke/i386/exp.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/i386/exp.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,6 +15,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, KeInitExceptions) +#endif + + /* * FIXMES: * - Put back VEH. _____
Modified: trunk/reactos/ntoskrnl/ke/i386/kernel.c --- trunk/reactos/ntoskrnl/ke/i386/kernel.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/i386/kernel.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -29,9 +29,20 @@
extern PVOID Ki386InitialStackArray[MAXIMUM_PROCESSORS]; extern ULONG IdleProcessorMask;
+static VOID INIT_FUNCTION Ki386GetCpuId(VOID); + +#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, Ki386GetCpuId) +#pragma alloc_text(INIT, KeCreateApplicationProcessorIdleThread) +#pragma alloc_text(INIT, KePrepareForApplicationProcessorInit) +#pragma alloc_text(INIT, KeInit1) +#pragma alloc_text(INIT, KeInit2) +#pragma alloc_text(INIT, Ki386SetProcessorFeatures) +#endif + /* FUNCTIONS *****************************************************************/
-VOID INIT_FUNCTION STATIC +static VOID INIT_FUNCTION Ki386GetCpuId(VOID) { ULONG OrigFlags, Flags, FinalFlags; _____
Modified: trunk/reactos/ntoskrnl/ke/i386/tss.c --- trunk/reactos/ntoskrnl/ke/i386/tss.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/i386/tss.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, Ki386BootInitializeTSS) +#endif + /* GLOBALS *******************************************************************/
typedef struct _KTSSNOIOPM _____
Modified: trunk/reactos/ntoskrnl/ke/i386/vdm.c --- trunk/reactos/ntoskrnl/ke/i386/vdm.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/i386/vdm.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -13,6 +13,11 @@
#include <ntoskrnl.h> #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, NtEarlyInitVdm) +#endif + + /* GLOBALS *******************************************************************/
static UCHAR OrigIVT[1024]; _____
Modified: trunk/reactos/ntoskrnl/ke/main.c --- trunk/reactos/ntoskrnl/ke/main.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/main.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -64,6 +64,12 @@
extern unsigned int _image_base__; ULONG_PTR KERNEL_BASE = (ULONG_PTR)&_image_base__;
+VOID INIT_FUNCTION _main(ULONG MultiBootMagic, PLOADER_PARAMETER_BLOCK _LoaderBlock); + +#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, _main) +#endif + /* FUNCTIONS ****************************************************************/
/* _____
Modified: trunk/reactos/ntoskrnl/ke/usercall.c --- trunk/reactos/ntoskrnl/ke/usercall.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ke/usercall.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -13,6 +13,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, PsInitialiseW32Call) +#endif + /* FUNCTIONS *****************************************************************/
#if ALEX_CB_REWRITE _____
Modified: trunk/reactos/ntoskrnl/ldr/loader.c --- trunk/reactos/ntoskrnl/ldr/loader.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/ldr/loader.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -34,6 +34,12 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, LdrInit1) +#pragma alloc_text(INIT, LdrInitModuleManagement) +#pragma alloc_text(INIT, LdrSafePEProcessModule) +#endif + /* GLOBALS *******************************************************************/
LIST_ENTRY ModuleListHead; _____
Modified: trunk/reactos/ntoskrnl/lpc/port.c --- trunk/reactos/ntoskrnl/lpc/port.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/lpc/port.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, LpcpInitSystem) +#endif +
/* GLOBALS *******************************************************************/
_____
Modified: trunk/reactos/ntoskrnl/mm/aspace.c --- trunk/reactos/ntoskrnl/mm/aspace.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/aspace.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -13,6 +13,11 @@
#include <ntoskrnl.h> #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitializeKernelAddressSpace) +#endif + + /* GLOBALS ******************************************************************/
STATIC MADDRESS_SPACE KernelAddressSpace; _____
Modified: trunk/reactos/ntoskrnl/mm/balance.c --- trunk/reactos/ntoskrnl/mm/balance.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/balance.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,13 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitializeBalancer) +#pragma alloc_text(INIT, MmInitializeMemoryConsumer) +#pragma alloc_text(INIT, MiInitBalancerThread) +#endif + + /* TYPES ********************************************************************/ typedef struct _MM_ALLOCATION_REQUEST { _____
Modified: trunk/reactos/ntoskrnl/mm/freelist.c --- trunk/reactos/ntoskrnl/mm/freelist.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/freelist.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -15,6 +15,12 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitializePageList) +#pragma alloc_text(INIT, MmInitZeroPageThread) +#endif + + /* TYPES *******************************************************************/
#define MM_PHYSICAL_PAGE_FREE (0x1) _____
Modified: trunk/reactos/ntoskrnl/mm/i386/page.c --- trunk/reactos/ntoskrnl/mm/i386/page.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/i386/page.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,12 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitGlobalKernelPageDirectory) +#pragma alloc_text(INIT, MiInitPageDirectoryMap) +#endif + + /* GLOBALS *****************************************************************/
#define PA_BIT_PRESENT (0) _____
Modified: trunk/reactos/ntoskrnl/mm/marea.c --- trunk/reactos/ntoskrnl/mm/marea.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/marea.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -47,6 +47,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitMemoryAreas) +#endif + /* #define VALIDATE_MEMORY_AREAS */
/* FUNCTIONS *****************************************************************/ _____
Modified: trunk/reactos/ntoskrnl/mm/mdl.c --- trunk/reactos/ntoskrnl/mm/mdl.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/mdl.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitializeMdlImplementation) +#endif + /* GLOBALS *******************************************************************/
#define TAG_MDL TAG('M', 'D', 'L', ' ') _____
Modified: trunk/reactos/ntoskrnl/mm/mminit.c --- trunk/reactos/ntoskrnl/mm/mminit.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/mminit.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -39,6 +39,15 @@
extern ULONG init_stack; extern ULONG init_stack_top;
+VOID INIT_FUNCTION NTAPI MmInitVirtualMemory(ULONG_PTR LastKernelAddress, ULONG KernelLength); + +#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitVirtualMemory) +#pragma alloc_text(INIT, MmInit1) +#pragma alloc_text(INIT, MmInit2) +#pragma alloc_text(INIT, MmInit3) +#endif + /* FUNCTIONS ****************************************************************/
/* _____
Modified: trunk/reactos/ntoskrnl/mm/npool.c --- trunk/reactos/ntoskrnl/mm/npool.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/npool.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -17,6 +17,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MiInitializeNonPagedPool) +#endif + #ifdef ENABLE_VALIDATE_POOL #define VALIDATE_POOL validate_kernel_pool() #else _____
Modified: trunk/reactos/ntoskrnl/mm/pagefile.c --- trunk/reactos/ntoskrnl/mm/pagefile.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/pagefile.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -32,6 +32,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitPagingFile) +#endif + + /* TYPES *********************************************************************/
typedef struct _PAGINGFILE _____
Modified: trunk/reactos/ntoskrnl/mm/pageop.c --- trunk/reactos/ntoskrnl/mm/pageop.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/pageop.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,11 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitializePageOp) +#endif + + /* GLOBALS *******************************************************************/
#define PAGEOP_HASH_TABLE_SIZE (32) _____
Modified: trunk/reactos/ntoskrnl/mm/ppool.c --- trunk/reactos/ntoskrnl/mm/ppool.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/ppool.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -19,6 +19,10 @@
#include <internal/debug.h> #endif//PPOOL_UMODE_TEST
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitializePagedPool) +#endif + #undef ASSERT #define ASSERT(x) if (!(x)) {DbgPrint("Assertion "#x" failed at %s:%d\n", __FILE__,__LINE__); KeBugCheck(0); }
_____
Modified: trunk/reactos/ntoskrnl/mm/process.c --- trunk/reactos/ntoskrnl/mm/process.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/process.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -206,7 +206,7 @@
/* Allocate the PEB */ Peb = MiCreatePebOrTeb(Process, (PVOID)((ULONG_PTR)MM_HIGHEST_VAD_ADDRESS + 1)); - ASSERT(Peb == (PVOID)0x7FFDF000) + ASSERT(Peb == (PVOID)0x7FFDF000);
/* Map NLS Tables */ DPRINT("Mapping NLS\n"); _____
Modified: trunk/reactos/ntoskrnl/mm/rmap.c --- trunk/reactos/ntoskrnl/mm/rmap.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/rmap.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -14,6 +14,10 @@
#define NDEBUG #include <internal/debug.h>
+#if defined (ALLOC_PRAGMA) +#pragma alloc_text(INIT, MmInitializeRmapList) +#endif + /* TYPES ********************************************************************/
typedef struct _MM_RMAP_ENTRY _____
Modified: trunk/reactos/ntoskrnl/mm/section.c --- trunk/reactos/ntoskrnl/mm/section.c 2005-11-28 23:21:24 UTC (rev 19731) +++ trunk/reactos/ntoskrnl/mm/section.c 2005-11-28 23:25:31 UTC (rev 19732) @@ -49,9 +49,14 @@
#include <ntoskrnl.h> #define NDEBUG #include <internal/debug.h> - [truncated at 1000 lines; 279 more skipped]