* Sync up to trunk head (r64921).
[reactos.git] / include / ddk / wdm.h
index 8d04060..6dce825 100644 (file)
@@ -139,7 +139,7 @@ extern "C" {
 #ifdef _M_IX86
 #define __SYMBOL(_Name) "_"#_Name
 #define __IMPORTSYMBOL(_Name) "__imp__"#_Name
-#define __IMPORTNAME(_Name) _imp__##_Name
+#define __IMPORTNAME(_Name) __imp__##_Name
 #else
 #define __SYMBOL(_Name) #_Name
 #define __IMPORTSYMBOL(_Name) "__imp_"#_Name
@@ -235,51 +235,6 @@ inline int IsEqualGUIDAligned(REFGUID guid1, REFGUID guid2)
 /******************************************************************************
  *                           INTERLOCKED Functions                            *
  ******************************************************************************/
-//
-// Intrinsics (note: taken from our winnt.h)
-// FIXME: 64-bit
-//
-#if defined(__GNUC__)
-
-static __inline__ BOOLEAN
-InterlockedBitTestAndSet(
-    _Inout_updates_bytes_((Bit+7)/8) _Interlocked_operand_ LONG volatile *Base,
-    _In_ LONG Bit)
-{
-#if defined(_M_IX86)
-  LONG OldBit;
-  __asm__ __volatile__("lock "
-                       "btsl %2,%1\n\t"
-                       "sbbl %0,%0\n\t"
-                       :"=r" (OldBit),"+m" (*Base)
-                       :"Ir" (Bit)
-                       : "memory");
-  return OldBit;
-#else
-  return (_InterlockedOr(Base, 1 << Bit) >> Bit) & 1;
-#endif
-}
-
-static __inline__ BOOLEAN
-InterlockedBitTestAndReset(
-    _Inout_updates_bytes_((Bit+7)/8) _Interlocked_operand_ LONG volatile *Base,
-    _In_ LONG Bit)
-{
-#if defined(_M_IX86)
-  LONG OldBit;
-  __asm__ __volatile__("lock "
-                       "btrl %2,%1\n\t"
-                       "sbbl %0,%0\n\t"
-                       :"=r" (OldBit),"+m" (*Base)
-                       :"Ir" (Bit)
-                       : "memory");
-  return OldBit;
-#else
-  return (_InterlockedAnd(Base, ~(1 << Bit)) >> Bit) & 1;
-#endif
-}
-
-#endif /* defined(__GNUC__) */
 
 #define BitScanForward _BitScanForward
 #define BitScanReverse _BitScanReverse
@@ -631,11 +586,11 @@ extern BOOLEAN NlsMbCodePageTag;
 extern BOOLEAN NlsMbOemCodePageTag;
 #define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
 #else
-extern BOOLEAN *NlsMbCodePageTag;
 __CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbCodePageTag)
+extern BOOLEAN *NlsMbCodePageTag;
 #define NLS_MB_CODE_PAGE_TAG (*NlsMbCodePageTag)
-extern BOOLEAN *NlsMbOemCodePageTag;
 __CREATE_NTOS_DATA_IMPORT_ALIAS(NlsMbOemCodePageTag)
+extern BOOLEAN *NlsMbOemCodePageTag;
 #define NLS_MB_OEM_CODE_PAGE_TAG (*NlsMbOemCodePageTag)
 #endif
 
@@ -1706,8 +1661,8 @@ extern NTSYSAPI volatile CCHAR KeNumberProcessors;
 #elif (NTDDI_VERSION >= NTDDI_WINXP)
 extern NTSYSAPI CCHAR KeNumberProcessors;
 #else
-extern PCCHAR KeNumberProcessors;
 __CREATE_NTOS_DATA_IMPORT_ALIAS(KeNumberProcessors)
+extern PCCHAR KeNumberProcessors;
 #endif
 
 
@@ -1860,8 +1815,8 @@ typedef enum _MM_SYSTEM_SIZE {
 } MM_SYSTEMSIZE;
 
 #ifndef _NTSYSTEM_
-extern PBOOLEAN Mm64BitPhysicalAddress;
 __CREATE_NTOS_DATA_IMPORT_ALIAS(Mm64BitPhysicalAddress)
+extern PBOOLEAN Mm64BitPhysicalAddress;
 #endif
 extern NTKERNELAPI PVOID MmBadPointer;
 
@@ -7904,17 +7859,6 @@ extern POBJECT_TYPE NTSYSAPI PsThreadType;
 extern POBJECT_TYPE NTSYSAPI SeTokenObjectType;
 extern POBJECT_TYPE NTSYSAPI PsProcessType;
 #else
-extern POBJECT_TYPE *CmKeyObjectType;
-extern POBJECT_TYPE *IoFileObjectType;
-extern POBJECT_TYPE *ExEventObjectType;
-extern POBJECT_TYPE *ExSemaphoreObjectType;
-extern POBJECT_TYPE *TmTransactionManagerObjectType;
-extern POBJECT_TYPE *TmResourceManagerObjectType;
-extern POBJECT_TYPE *TmEnlistmentObjectType;
-extern POBJECT_TYPE *TmTransactionObjectType;
-extern POBJECT_TYPE *PsProcessType;
-extern POBJECT_TYPE *PsThreadType;
-extern POBJECT_TYPE *SeTokenObjectType;
 __CREATE_NTOS_DATA_IMPORT_ALIAS(CmKeyObjectType)
 __CREATE_NTOS_DATA_IMPORT_ALIAS(IoFileObjectType)
 __CREATE_NTOS_DATA_IMPORT_ALIAS(ExEventObjectType)
@@ -7926,6 +7870,17 @@ __CREATE_NTOS_DATA_IMPORT_ALIAS(TmTransactionObjectType)
 __CREATE_NTOS_DATA_IMPORT_ALIAS(PsProcessType)
 __CREATE_NTOS_DATA_IMPORT_ALIAS(PsThreadType)
 __CREATE_NTOS_DATA_IMPORT_ALIAS(SeTokenObjectType)
+extern POBJECT_TYPE *CmKeyObjectType;
+extern POBJECT_TYPE *IoFileObjectType;
+extern POBJECT_TYPE *ExEventObjectType;
+extern POBJECT_TYPE *ExSemaphoreObjectType;
+extern POBJECT_TYPE *TmTransactionManagerObjectType;
+extern POBJECT_TYPE *TmResourceManagerObjectType;
+extern POBJECT_TYPE *TmEnlistmentObjectType;
+extern POBJECT_TYPE *TmTransactionObjectType;
+extern POBJECT_TYPE *PsProcessType;
+extern POBJECT_TYPE *PsThreadType;
+extern POBJECT_TYPE *SeTokenObjectType;
 #endif
 
 
@@ -11106,9 +11061,9 @@ RtlCheckBit(
 # define __assert_annotationW(msg) __annotation(L"Debug", L"AssertFail", msg)
 #else
 # define __assert_annotationA(msg) \
-    DbgPrint("Assertion %s(%d): %s", __FILE__, __LINE__, msg)
+    DbgPrint("Assertion failed at %s(%d): %s\n", __FILE__, __LINE__, msg)
 # define __assert_annotationW(msg) \
-    DbgPrint("Assertion %s(%d): %S", __FILE__, __LINE__, msg)
+    DbgPrint("Assertion failed at %s(%d): %S\n", __FILE__, __LINE__, msg)
 #endif
 
 #define NT_VERIFY(exp) \
@@ -15839,11 +15794,11 @@ extern BOOLEAN KdDebuggerEnabled;
 extern BOOLEAN KdDebuggerNotPresent;
 #define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
 #else
-extern BOOLEAN *KdDebuggerEnabled;
 __CREATE_NTOS_DATA_IMPORT_ALIAS(KdDebuggerEnabled)
+extern BOOLEAN *KdDebuggerEnabled;
 #define KD_DEBUGGER_ENABLED (*KdDebuggerEnabled)
-extern BOOLEAN *KdDebuggerNotPresent;
 __CREATE_NTOS_DATA_IMPORT_ALIAS(KdDebuggerNotPresent)
+extern BOOLEAN *KdDebuggerNotPresent;
 #define KD_DEBUGGER_NOT_PRESENT (*KdDebuggerNotPresent)
 #endif