]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Library/BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.inf
MdePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdePkg / Library / BaseMemoryLibOptDxe / BaseMemoryLibOptDxe.inf
1 ## @file
2 # Instance of Base Memory Library optimized for use in DXE phase.
3 #
4 # Base Memory Library that is optimized for use in DXE phase.
5 # Uses REP, MMX, XMM registers as required for best performance.
6 #
7 # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
8 #
9 # SPDX-License-Identifier: BSD-2-Clause-Patent
10 #
11 #
12 ##
13
14 [Defines]
15 INF_VERSION = 0x00010005
16 BASE_NAME = BaseMemoryLibOptDxe
17 MODULE_UNI_FILE = BaseMemoryLibOptDxe.uni
18 FILE_GUID = 02BD55C2-AB1D-4b75-B0FD-9A63AE09B31D
19 MODULE_TYPE = BASE
20 VERSION_STRING = 1.0
21 LIBRARY_CLASS = BaseMemoryLib
22
23
24 #
25 # VALID_ARCHITECTURES = IA32 X64 ARM AARCH64
26 #
27
28 [Sources]
29 MemLibInternals.h
30
31 [Sources.Ia32]
32 Ia32/ScanMem64.nasm
33 Ia32/ScanMem32.nasm
34 Ia32/ScanMem16.nasm
35 Ia32/ScanMem8.nasm
36 Ia32/CompareMem.nasm
37 Ia32/ZeroMem.nasm
38 Ia32/SetMem64.nasm
39 Ia32/SetMem32.nasm
40 Ia32/SetMem16.nasm
41 Ia32/SetMem.nasm
42 Ia32/CopyMem.nasm
43 Ia32/ScanMem64.nasm
44 Ia32/ScanMem32.nasm
45 Ia32/ScanMem16.nasm
46 Ia32/ScanMem8.nasm
47 Ia32/CompareMem.nasm
48 Ia32/ZeroMem.nasm
49 Ia32/SetMem64.nasm
50 Ia32/SetMem32.nasm
51 Ia32/SetMem16.nasm
52 Ia32/SetMem.nasm
53 Ia32/CopyMem.nasm
54 Ia32/IsZeroBuffer.nasm
55 MemLibGuid.c
56
57 [Sources.X64]
58 X64/ScanMem64.nasm
59 X64/ScanMem32.nasm
60 X64/ScanMem16.nasm
61 X64/ScanMem8.nasm
62 X64/CompareMem.nasm
63 X64/ZeroMem.nasm
64 X64/SetMem64.nasm
65 X64/SetMem32.nasm
66 X64/SetMem16.nasm
67 X64/SetMem.nasm
68 X64/CopyMem.nasm
69 X64/IsZeroBuffer.nasm
70 MemLibGuid.c
71
72 [Defines.ARM, Defines.AARCH64]
73 #
74 # The ARM implementations of this library may perform unaligned accesses, and
75 # may use DC ZVA instructions that are only allowed when the MMU and D-cache
76 # are on. Since SEC, PEI_CORE and PEIM modules may execute with the MMU off,
77 # omit them from the supported module types list for this library.
78 #
79 LIBRARY_CLASS = BaseMemoryLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION
80
81 [Sources.ARM]
82 Arm/ScanMem.S |GCC
83 Arm/SetMem.S |GCC
84 Arm/CopyMem.S |GCC
85 Arm/CompareMem.S |GCC
86 Arm/CompareGuid.S |GCC
87
88 Arm/ScanMem.asm |RVCT
89 Arm/SetMem.asm |RVCT
90 Arm/CopyMem.asm |RVCT
91 Arm/CompareMem.asm |RVCT
92 Arm/CompareGuid.asm |RVCT
93
94 [Sources.AARCH64]
95 AArch64/ScanMem.S
96 AArch64/SetMem.S
97 AArch64/CopyMem.S
98 AArch64/CompareMem.S
99 AArch64/CompareGuid.S
100
101 [Sources.ARM, Sources.AARCH64]
102 Arm/ScanMemGeneric.c
103 Arm/MemLibGuid.c
104
105 [Sources]
106 ScanMem64Wrapper.c
107 ScanMem32Wrapper.c
108 ScanMem16Wrapper.c
109 ScanMem8Wrapper.c
110 ZeroMemWrapper.c
111 CompareMemWrapper.c
112 SetMem64Wrapper.c
113 SetMem32Wrapper.c
114 SetMem16Wrapper.c
115 SetMemWrapper.c
116 CopyMemWrapper.c
117 IsZeroBufferWrapper.c
118
119 [Packages]
120 MdePkg/MdePkg.dec
121
122 [LibraryClasses]
123 DebugLib
124 BaseLib
125