X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdePkg%2FLibrary%2FBaseLib%2FIa32%2FARShiftU64.asm;h=10f04c3875166780aa56122404d220b4bed7d6b2;hp=17f07bb66c61ac16dd4705a217b9241fca066b63;hb=88a75d260cadc67cc0edf6ad5f57241ed89a7d4b;hpb=e1f414b6a7d8a0424e0e01f655b09a4612b4d0e8 diff --git a/MdePkg/Library/BaseLib/Ia32/ARShiftU64.asm b/MdePkg/Library/BaseLib/Ia32/ARShiftU64.asm index 17f07bb66c..10f04c3875 100644 --- a/MdePkg/Library/BaseLib/Ia32/ARShiftU64.asm +++ b/MdePkg/Library/BaseLib/Ia32/ARShiftU64.asm @@ -1,10 +1,10 @@ ;------------------------------------------------------------------------------ ; -; Copyright (c) 2006, Intel Corporation -; All rights reserved. This program and the accompanying materials +; 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 -; http://opensource.org/licenses/bsd-license.php +; http://opensource.org/licenses/bsd-license.php. ; ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. @@ -36,8 +36,10 @@ InternalMathARShiftU64 PROC mov eax, [esp + 8] cdq test cl, 32 - cmovz edx, eax - cmovz eax, [esp + 4] + jnz @F + mov edx, eax + mov eax, [esp + 4] +@@: shrd eax, edx, cl sar edx, cl ret