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 - 2016, Intel Corporation. All rights reserved.<BR> 8# 9# This program and the accompanying materials 10# are licensed and made available under the terms and conditions of the BSD License 11# which accompanies this distribution. The full text of the license may be found at 12# http://opensource.org/licenses/bsd-license.php. 13# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15# 16# 17## 18 19[Defines] 20 INF_VERSION = 0x00010005 21 BASE_NAME = BaseMemoryLibOptDxe 22 MODULE_UNI_FILE = BaseMemoryLibOptDxe.uni 23 FILE_GUID = 02BD55C2-AB1D-4b75-B0FD-9A63AE09B31D 24 MODULE_TYPE = BASE 25 VERSION_STRING = 1.0 26 LIBRARY_CLASS = BaseMemoryLib 27 28 29# 30# VALID_ARCHITECTURES = IA32 X64 ARM AARCH64 31# 32 33[Sources] 34 MemLibInternals.h 35 36[Sources.Ia32] 37 Ia32/ScanMem64.nasm 38 Ia32/ScanMem64.S 39 Ia32/ScanMem32.nasm 40 Ia32/ScanMem32.S 41 Ia32/ScanMem16.nasm 42 Ia32/ScanMem16.S 43 Ia32/ScanMem8.nasm 44 Ia32/ScanMem8.S 45 Ia32/CompareMem.nasm 46 Ia32/CompareMem.S 47 Ia32/ZeroMem.nasm 48 Ia32/ZeroMem.S 49 Ia32/SetMem64.nasm 50 Ia32/SetMem64.S 51 Ia32/SetMem32.nasm 52 Ia32/SetMem32.S 53 Ia32/SetMem16.nasm 54 Ia32/SetMem16.S 55 Ia32/SetMem.nasm 56 Ia32/SetMem.S 57 Ia32/CopyMem.nasm 58 Ia32/CopyMem.S 59 Ia32/ScanMem64.nasm 60 Ia32/ScanMem64.asm 61 Ia32/ScanMem32.nasm 62 Ia32/ScanMem32.asm 63 Ia32/ScanMem16.nasm 64 Ia32/ScanMem16.asm 65 Ia32/ScanMem8.nasm 66 Ia32/ScanMem8.asm 67 Ia32/CompareMem.nasm 68 Ia32/CompareMem.asm 69 Ia32/ZeroMem.nasm 70 Ia32/ZeroMem.asm 71 Ia32/SetMem64.nasm 72 Ia32/SetMem64.asm 73 Ia32/SetMem32.nasm 74 Ia32/SetMem32.asm 75 Ia32/SetMem16.nasm 76 Ia32/SetMem16.asm 77 Ia32/SetMem.nasm 78 Ia32/SetMem.asm 79 Ia32/CopyMem.nasm 80 Ia32/CopyMem.asm 81 Ia32/IsZeroBuffer.nasm 82 MemLibGuid.c 83 84[Sources.X64] 85 X64/ScanMem64.nasm 86 X64/ScanMem64.asm 87 X64/ScanMem64.S 88 X64/ScanMem32.nasm 89 X64/ScanMem32.asm 90 X64/ScanMem32.S 91 X64/ScanMem16.nasm 92 X64/ScanMem16.asm 93 X64/ScanMem16.S 94 X64/ScanMem8.nasm 95 X64/ScanMem8.asm 96 X64/ScanMem8.S 97 X64/CompareMem.nasm 98 X64/CompareMem.asm 99 X64/CompareMem.S 100 X64/ZeroMem.nasm 101 X64/ZeroMem.asm 102 X64/ZeroMem.S 103 X64/SetMem64.nasm 104 X64/SetMem64.asm 105 X64/SetMem64.S 106 X64/SetMem32.nasm 107 X64/SetMem32.asm 108 X64/SetMem32.S 109 X64/SetMem16.nasm 110 X64/SetMem16.asm 111 X64/SetMem16.S 112 X64/SetMem.nasm 113 X64/SetMem.asm 114 X64/SetMem.S 115 X64/CopyMem.nasm 116 X64/CopyMem.asm 117 X64/CopyMem.S 118 X64/IsZeroBuffer.nasm 119 MemLibGuid.c 120 121[Defines.ARM, Defines.AARCH64] 122 # 123 # The ARM implementations of this library may perform unaligned accesses, and 124 # may use DC ZVA instructions that are only allowed when the MMU and D-cache 125 # are on. Since SEC, PEI_CORE and PEIM modules may execute with the MMU off, 126 # omit them from the supported module types list for this library. 127 # 128 LIBRARY_CLASS = BaseMemoryLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_DRIVER UEFI_APPLICATION 129 130[Sources.ARM] 131 Arm/ScanMem.S |GCC 132 Arm/SetMem.S |GCC 133 Arm/CopyMem.S |GCC 134 Arm/CompareMem.S |GCC 135 Arm/CompareGuid.S |GCC 136 137 Arm/ScanMem.asm |RVCT 138 Arm/SetMem.asm |RVCT 139 Arm/CopyMem.asm |RVCT 140 Arm/CompareMem.asm |RVCT 141 Arm/CompareGuid.asm |RVCT 142 143[Sources.AARCH64] 144 AArch64/ScanMem.S 145 AArch64/SetMem.S 146 AArch64/CopyMem.S 147 AArch64/CompareMem.S 148 AArch64/CompareGuid.S 149 150[Sources.ARM, Sources.AARCH64] 151 Arm/ScanMemGeneric.c 152 Arm/MemLibGuid.c 153 154[Sources] 155 ScanMem64Wrapper.c 156 ScanMem32Wrapper.c 157 ScanMem16Wrapper.c 158 ScanMem8Wrapper.c 159 ZeroMemWrapper.c 160 CompareMemWrapper.c 161 SetMem64Wrapper.c 162 SetMem32Wrapper.c 163 SetMem16Wrapper.c 164 SetMemWrapper.c 165 CopyMemWrapper.c 166 IsZeroBufferWrapper.c 167 168[Packages] 169 MdePkg/MdePkg.dec 170 171[LibraryClasses] 172 DebugLib 173 BaseLib 174 175