]> git.proxmox.com Git - mirror_edk2.git/blame - EdkCompatibilityPkg/Foundation/Library/EfiCommonLib/X64/EfiSetMemRep8.asm
Update the copyright notice format
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Library / EfiCommonLib / X64 / EfiSetMemRep8.asm
CommitLineData
c7f33ca4 1;------------------------------------------------------------------------------\r
2;\r
4ea9375a
HT
3; Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>\r
4; This program and the accompanying materials\r
c7f33ca4 5; are licensed and made available under the terms and conditions of the BSD License\r
6; which accompanies this distribution. The full text of the license may be found at\r
7; http://opensource.org/licenses/bsd-license.php\r
8;\r
9; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11;\r
12; Module Name:\r
13;\r
14; EfiSetMemRep8.asm\r
15;\r
16; Abstract:\r
17;\r
18; SetMem function\r
19;\r
20; Notes:\r
21;\r
22;------------------------------------------------------------------------------\r
23\r
24 .code\r
25\r
26;------------------------------------------------------------------------------\r
27; VOID\r
28; EfiCommonLibSetMem (\r
29; OUT VOID *Buffer,\r
30; IN UINTN Size,\r
31; IN UINT8 Value\r
32; );\r
33;------------------------------------------------------------------------------\r
34EfiCommonLibSetMem PROC USES rdi rbx\r
35 cmp rdx, 0 ; if Size == 0, do nothing\r
36 je @SetDone\r
37 mov rax, r8\r
38 mov bl, al\r
39 mov bh, bl\r
40 mov ax, bx\r
41 shl rax, 10h\r
42 mov ax, bx\r
43 mov ebx, eax \r
44 shl rax, 20h\r
45 mov eax, ebx\r
46 mov rdi, rcx\r
47 mov rcx, rdx\r
48 shr rcx, 3\r
49 rep stosq\r
50 mov rcx, rdx\r
51 and rcx, 7\r
52 rep stosb\r
53@SetDone:\r
54 ret\r
55EfiCommonLibSetMem ENDP\r
56\r
57 END\r
58\r