- 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]