summaryrefslogtreecommitdiff
path: root/MdePkg/Library/BaseLib/Ia32/ARShiftU64.S
diff options
context:
space:
mode:
Diffstat (limited to 'MdePkg/Library/BaseLib/Ia32/ARShiftU64.S')
-rw-r--r--MdePkg/Library/BaseLib/Ia32/ARShiftU64.S28
1 files changed, 15 insertions, 13 deletions
diff --git a/MdePkg/Library/BaseLib/Ia32/ARShiftU64.S b/MdePkg/Library/BaseLib/Ia32/ARShiftU64.S
index 426ce5bd26..a41cfdb65c 100644
--- a/MdePkg/Library/BaseLib/Ia32/ARShiftU64.S
+++ b/MdePkg/Library/BaseLib/Ia32/ARShiftU64.S
@@ -19,21 +19,23 @@
#
#------------------------------------------------------------------------------
-
-
-
-
.global _InternalMathARShiftU64
-_InternalMathARShiftU64:
- movb 12(%esp),%cl
- movl 8(%esp),%eax
+
+#------------------------------------------------------------------------------
+# UINT64
+# EFIAPI
+# InternalMathARShiftU64 (
+# IN UINT64 Operand,
+# IN UINTN Count
+# );
+#------------------------------------------------------------------------------
+_InternalMathARShiftU64:
+ movb 12(%esp), %cl
+ movl 8(%esp), %eax
cltd
- testb $32,%cl
+ testb $32, %cl
cmovz %eax, %edx
cmovz 4(%esp), %eax
- shrdl %cl,%edx,%eax
- sar %cl,%edx
+ shrdl %cl, %edx, %eax
+ sar %cl, %edx
ret
-
-
-