]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseMemoryLibRepStr/X64/ScanMem32.S
clean up all of eight BaseMemoryLib instances in MdePkg with the following updates:
[mirror_edk2.git] / MdePkg / Library / BaseMemoryLibRepStr / X64 / ScanMem32.S
index 9420725d5ea740d1174a2c68a84031b120392e5d..f863cfe4bb560bdf86f50282062082ed536df593 100644 (file)
@@ -3,7 +3,7 @@
 #\r
 #------------------------------------------------------------------------------\r
 #\r
-# Copyright (c) 2006 - 2008, Intel Corporation\r
+# Copyright (c) 2006 - 2009, Intel Corporation\r
 # All rights reserved. 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
 #   IN      UINT32                    Value\r
 #   );\r
 #------------------------------------------------------------------------------\r
-.intel_syntax noprefix\r
 ASM_GLOBAL ASM_PFX(InternalMemScanMem32)\r
 ASM_PFX(InternalMemScanMem32):\r
-    push    rdi\r
-    mov     rdi, rcx\r
-    mov     rax, r8\r
-    mov     rcx, rdx\r
-    repne   scasd\r
-    lea     rax, [rdi - 4]\r
-    cmovnz  rax, rcx\r
-    pop     rdi\r
+    pushq   %rdi\r
+    movq    %rcx, %rdi\r
+    movq    %rdx, %rcx\r
+    movq    %r8, %rax\r
+    repne   scasl\r
+    leaq    -4(%rdi), %rax\r
+    cmovnz  %rcx, %rax                    # set rax to 0 if not found\r
+    popq    %rdi\r
     ret\r
 \r