This commit was manufactured by cvs2svn to create branch 'captive'.
[reactos.git] / ntoskrnl / rtl / i386 / aullshr.s
diff --git a/ntoskrnl/rtl/i386/aullshr.s b/ntoskrnl/rtl/i386/aullshr.s
new file mode 100644 (file)
index 0000000..0d7bbcd
--- /dev/null
@@ -0,0 +1,32 @@
+/* $Id$
+ *
+ * COPYRIGHT:         See COPYING in the top level directory
+ * PROJECT:           ReactOS kernel
+ * PURPOSE:           Math support for IA-32
+ * FILE:              ntoskrnl/rtl/i386/aullshr.s
+ * PROGRAMER:         Eric Kohl (ekohl@rz-online.de)
+ */
+
+/*
+ * unsigned long long
+ * __aullshr(unsigned long long Value, unsigned char Shift);
+ *
+ * Parameters:
+ *   EDX:EAX - unsigned long long value to be shifted right
+ *   CL      - number of bits to shift by
+ * Registers:
+ *   Destroys CL
+ * Returns:
+ *   EDX:EAX - shifted value
+ */
+.globl __aullshr
+__aullshr:
+       shrdl   %cl, %edx, %eax
+       shrl    %cl, %edx
+       andl    $32, %ecx
+       je              L1
+       movl    %edx, %eax
+L1:
+       ret
+
+/* EOF */