]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseMemoryLibRepStr/Ia32/CopyMem.S
1. Updated function headers for all assembly function
[mirror_edk2.git] / MdePkg / Library / BaseMemoryLibRepStr / Ia32 / CopyMem.S
index e80a00deb4bf7de1df0c6f9aae5bf6c1fd48c3a9..42695b28c4cf23d16a6fcecb7d8f4bfc503489bf 100644 (file)
 #
 #------------------------------------------------------------------------------
 
-    .386: 
-    .code: 
-
 .global _InternalMemCopyMem
+
+#------------------------------------------------------------------------------
+#  VOID *
+#  EFIAPI
+#  InternalMemCopyMem (
+#    IN VOID   *Destination,
+#    IN VOID   *Source,
+#    IN UINTN  Count
+#    );
+#------------------------------------------------------------------------------
 _InternalMemCopyMem:
     push    %esi
     push    %edi
-    movl    16(%esp),%esi               # esi <- Source
-    movl    12(%esp),%edi               # edi <- Destination
-    movl    20(%esp),%edx               # edx <- Count
-    leal    -1(%edi,%edx),%eax          # eax <- End of Destination
-    cmpl    %edi,%esi
+    movl    16(%esp), %esi              # esi <- Source
+    movl    12(%esp), %edi              # edi <- Destination
+    movl    20(%esp), %edx              # edx <- Count
+    leal    -1(%esi, %edx), %eax        # eax <- End of Source
+    cmpl    %edi, %esi
     jae     L0
-    cmpl    %esi,%eax
+    cmpl    %edi, %eax
     jae     @CopyBackward               # Copy backward if overlapped
-L0: 
-    movl    %edx,%ecx
-    andl    $3,%edx
-    shrl    $2,%ecx
+L0:
+    movl    %edx, %ecx
+    andl    $3, %edx
+    shrl    $2, %ecx
     rep
     movsl                               # Copy as many Dwords as possible
     jmp     @CopyBytes
-@CopyBackward: 
-    movl    %eax,%edi                   # edi <- End of Destination
-    leal    -1(%esi,%edx),%esi          # esi <- End of Source
+@CopyBackward:
+    movl    %eax, %esi                  # esi <- End of Source
+    leal    -1(%edi, %edx), %edi        # edi <- End of Destination
     std
-@CopyBytes: 
-    movl    %edx,%ecx
+@CopyBytes:
+    movl    %edx, %ecx
     rep
     movsb                               # Copy bytes backward
     cld
-    movl    12(%esp),%eax               # eax <- Destination as return value
+    movl    12(%esp), %eax              # eax <- Destination as return value
     pop     %edi
     pop     %esi
     ret