Merge trunk head (r41474)
[reactos.git] / reactos / include / ddk / wdm.h
index 318ba24..a7e1d24 100644 (file)
@@ -530,6 +530,13 @@ InterlockedAdd64(
     return InterlockedExchangeAdd64(Addend, Value) + Value;\r
 }\r
 //#endif\r
+#define BitScanForward _BitScanForward\r
+#define BitScanReverse _BitScanReverse\r
+#endif\r
+\r
+#ifdef _M_AMD64\r
+#define InterlockedBitTestAndSet64 _interlockedbittestandset64\r
+#define InterlockedBitTestAndReset64 _interlockedbittestandreset64\r
 #endif\r
 \r
 #endif /* !__INTERLOCKED_DECLARED */\r
@@ -561,7 +568,7 @@ InterlockedAdd64(
 #define PSLIST_ENTRY PSINGLE_LIST_ENTRY\r
 \r
 #if defined(_WIN64)\r
-typedef union _SLIST_HEADER {\r
+typedef union DECLSPEC_ALIGN(16) _SLIST_HEADER {\r
     struct {\r
         ULONGLONG Alignment;\r
         ULONGLONG Region;\r
@@ -575,13 +582,13 @@ typedef union _SLIST_HEADER {
         ULONGLONG Reserved:59;\r
         ULONGLONG Region:3;\r
     } Header8;\r
+    struct {\r
         ULONGLONG Depth:16;\r
         ULONGLONG Sequence:48;\r
         ULONGLONG HeaderType:1;\r
         ULONGLONG Init:1;\r
         ULONGLONG Reserved:2;\r
         ULONGLONG NextEntry:60;\r
-    struct {\r
     } Header16;\r
 } SLIST_HEADER, *PSLIST_HEADER;\r
 #else\r