Gcc cleanup for baselib & basememorylib in mdepkg/library/
[edk2.git] / MdePkg / Library / BaseMemoryLibOptDxe / Ia32 / SetMem32.S
blobe75bf4d9e6cd4c26c113553d2bfbfbf6e4f2f1a7
1 #------------------------------------------------------------------------------
3 # Copyright (c) 2006, Intel Corporation
4 # All rights reserved. This program and the accompanying materials
5 # are licensed and made available under the terms and conditions of the BSD License
6 # which accompanies this distribution.  The full text of the license may be found at
7 # http://opensource.org/licenses/bsd-license.php
9 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 # Module Name:
14 #   SetMem32.Asm
16 # Abstract:
18 #   SetMem32 function
20 # Notes:
22 #------------------------------------------------------------------------------
24 .globl ASM_PFX(InternalMemSetMem32)
26 #------------------------------------------------------------------------------
27 #  VOID *
28 #  InternalMemSetMem32 (
29 #    IN VOID   *Buffer,
30 #    IN UINTN  Count,
31 #    IN UINT32 Value
32 #    )
33 #------------------------------------------------------------------------------
34 ASM_PFX(InternalMemSetMem32):
35     push    %edi
36     movl    16(%esp),%eax
37     movl    8(%esp),%edi
38     movl    12(%esp),%ecx
39     rep
40     stosl
41     movl    8(%esp),%eax
42     pop     %edi
43     ret