[NTOSKRNL]
authorTimo Kreuzer <timo.kreuzer@reactos.org>
Fri, 9 Apr 2010 21:10:13 +0000 (21:10 +0000)
committerTimo Kreuzer <timo.kreuzer@reactos.org>
Fri, 9 Apr 2010 21:10:13 +0000 (21:10 +0000)
Fix msvc versions of Ke386GetGlobalDescriptorTable and Ke386SetGlobalDescriptorTable. Patch by Jose Catena.

See issue #5071 for more details.

svn path=/trunk/; revision=46797

reactos/ntoskrnl/include/internal/i386/intrin_i.h

index a78497b..9450184 100644 (file)
@@ -136,17 +136,27 @@ Ke386FnInit(VOID)
 
 FORCEINLINE
 VOID
-Ke386GetGlobalDescriptorTable(OUT PVOID Descriptor)
+__sgdt(OUT PVOID Descriptor)
 {
-    __asm sgdt [Descriptor];
+    __asm
+    {
+        mov eax, Descriptor
+        sgdt [eax]
+    }
 }
+#define Ke386GetGlobalDescriptorTable __sgdt
 
 FORCEINLINE
 VOID
-Ke386SetGlobalDescriptorTable(IN PVOID Descriptor)
+__lgdt(IN PVOID Descriptor)
 {
-    __asm lgdt [Descriptor];
+    __asm
+    {
+        mov eax, Descriptor
+        lgdt [eax]
+    }
 }
+#define Ke386SetGlobalDescriptorTable __lgdt
 
 FORCEINLINE
 USHORT