]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseLib/Ia32/ARShiftU64.c
MdePkg/BaseLib: Support IA32 processors without CMOVx
[mirror_edk2.git] / MdePkg / Library / BaseLib / Ia32 / ARShiftU64.c
index 754b25f511cdbed81d14b6ff2c061017527ec448..b1edc675e0374397983402eb6fdaa4be6b853dd1 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   64-bit arithmetic right shift function for IA-32.\r
 \r
-  Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>\r
   This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
@@ -40,8 +40,10 @@ InternalMathARShiftU64 (
     mov     eax, dword ptr [Operand + 4]\r
     cdq\r
     test    cl, 32\r
-    cmovz   edx, eax\r
-    cmovz   eax, dword ptr [Operand + 0]\r
+    jnz     L0\r
+    mov     edx, eax\r
+    mov     eax, dword ptr [Operand + 0]\r
+L0:\r
     shrd    eax, edx, cl\r
     sar     edx, cl\r
   }\r