X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdePkg%2FLibrary%2FBaseLib%2FIa32%2FRRotU64.S;h=f42f45018990b08fcfa6fde29cdc67c7a4e68363;hp=54fc089023c15b851e016d76548c2f940c7c0ecc;hb=88a75d260cadc67cc0edf6ad5f57241ed89a7d4b;hpb=881813d7a93d9009c873515b043c41c4554779e4
diff --git a/MdePkg/Library/BaseLib/Ia32/RRotU64.S b/MdePkg/Library/BaseLib/Ia32/RRotU64.S
index 54fc089023..f42f450189 100644
--- a/MdePkg/Library/BaseLib/Ia32/RRotU64.S
+++ b/MdePkg/Library/BaseLib/Ia32/RRotU64.S
@@ -1,6 +1,6 @@
#------------------------------------------------------------------------------
#
-# Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.
+# Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
@@ -39,8 +39,10 @@ ASM_PFX(InternalMathRRotU64):
roll %cl, %ebx
shrdl %cl, %ebx, %edx
testb $32, %cl # Count >= 32?
- cmovnz %eax, %ecx # switch eax & edx if Count >= 32
- cmovnz %edx, %eax
- cmovnz %ecx, %edx
+ jz L0
+ movl %eax, %ecx # switch eax & edx if Count >= 32
+ movl %edx, %eax
+ movl %ecx, %edx
+L0:
pop %ebx
ret