[ros-diffs] [dgorbachev] 37840: Fix Ke386Get(Global|Local|Interrupt)DescriptorTable, Ke386GetTr.
dgorbachev at svn.reactos.org
dgorbachev at svn.reactos.org
Wed Dec 3 23:24:29 CET 2008
Author: dgorbachev
Date: Wed Dec 3 16:24:29 2008
New Revision: 37840
URL: http://svn.reactos.org/svn/reactos?rev=37840&view=rev
Log:
Fix Ke386Get(Global|Local|Interrupt)DescriptorTable, Ke386GetTr.
Modified:
trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h
Modified: trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h?rev=37840&r1=37839&r2=37840&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h [iso-8859-1] Wed Dec 3 16:24:29 2008
@@ -16,8 +16,7 @@
#define Ke386GetInterruptDescriptorTable(X) \
__asm__("sidt %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386SetGlobalDescriptorTable(X) \
__asm__("lgdt %0\n\t" \
@@ -26,13 +25,11 @@
#define Ke386GetGlobalDescriptorTable(X) \
__asm__("sgdt %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386GetLocalDescriptorTable(X) \
__asm__("sldt %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386SetLocalDescriptorTable(X) \
__asm__("lldt %w0\n\t" \
@@ -43,8 +40,7 @@
#define Ke386GetTr(X) \
__asm__("str %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386SaveFlags(x) __asm__ __volatile__("pushfl ; popl %0":"=g" (x): /* no input */)
#define Ke386RestoreFlags(x) __asm__ __volatile__("pushl %0 ; popfl": /* no output */ :"g" (x):"memory")
More information about the Ros-diffs
mailing list