1 | ## @file
|
---|
2 | # Base Library implementation for use with host based unit tests, and
|
---|
3 | # can also be used by emulation platforms such as EmulatorPkg.
|
---|
4 | #
|
---|
5 | # Copyright (c) 2007 - 2022, Intel Corporation. All rights reserved.<BR>
|
---|
6 | # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
|
---|
7 | # Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>
|
---|
8 | # Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
|
---|
9 | #
|
---|
10 | # SPDX-License-Identifier: BSD-2-Clause-Patent
|
---|
11 | #
|
---|
12 | #
|
---|
13 | ##
|
---|
14 |
|
---|
15 | [Defines]
|
---|
16 | INF_VERSION = 0x00010005
|
---|
17 | BASE_NAME = UnitTestHostBaseLib
|
---|
18 | MODULE_UNI_FILE = UnitTestHostBaseLib.uni
|
---|
19 | FILE_GUID = 9555A0D3-09BA-46C4-A51A-45198E3C765E
|
---|
20 | MODULE_TYPE = BASE
|
---|
21 | VERSION_STRING = 1.1
|
---|
22 | LIBRARY_CLASS = BaseLib
|
---|
23 | LIBRARY_CLASS = UnitTestHostBaseLib|HOST_APPLICATION
|
---|
24 |
|
---|
25 | #
|
---|
26 | # VALID_ARCHITECTURES = IA32 X64
|
---|
27 | #
|
---|
28 |
|
---|
29 | [Sources]
|
---|
30 | CheckSum.c
|
---|
31 | SwitchStack.c
|
---|
32 | SwapBytes64.c
|
---|
33 | SwapBytes32.c
|
---|
34 | SwapBytes16.c
|
---|
35 | LongJump.c
|
---|
36 | SetJump.c
|
---|
37 | QuickSort.c
|
---|
38 | RShiftU64.c
|
---|
39 | RRotU64.c
|
---|
40 | RRotU32.c
|
---|
41 | MultU64x64.c
|
---|
42 | MultU64x32.c
|
---|
43 | MultS64x64.c
|
---|
44 | ModU64x32.c
|
---|
45 | LShiftU64.c
|
---|
46 | LRotU64.c
|
---|
47 | LRotU32.c
|
---|
48 | LowBitSet64.c
|
---|
49 | LowBitSet32.c
|
---|
50 | HighBitSet64.c
|
---|
51 | HighBitSet32.c
|
---|
52 | GetPowerOfTwo64.c
|
---|
53 | GetPowerOfTwo32.c
|
---|
54 | DivU64x64Remainder.c
|
---|
55 | DivU64x32Remainder.c
|
---|
56 | DivU64x32.c
|
---|
57 | DivS64x64Remainder.c
|
---|
58 | ARShiftU64.c
|
---|
59 | BitField.c
|
---|
60 | CpuDeadLoop.c
|
---|
61 | Cpu.c
|
---|
62 | LinkedList.c
|
---|
63 | SafeString.c
|
---|
64 | String.c
|
---|
65 | FilePaths.c
|
---|
66 | BaseLibInternals.h
|
---|
67 | UnitTestHost.c
|
---|
68 | UnitTestHost.h
|
---|
69 |
|
---|
70 | [Sources.Ia32]
|
---|
71 | Ia32/WriteMm7.c | MSFT
|
---|
72 | Ia32/WriteMm6.c | MSFT
|
---|
73 | Ia32/WriteMm5.c | MSFT
|
---|
74 | Ia32/WriteMm4.c | MSFT
|
---|
75 | Ia32/WriteMm3.c | MSFT
|
---|
76 | Ia32/WriteMm2.c | MSFT
|
---|
77 | Ia32/WriteMm1.c | MSFT
|
---|
78 | Ia32/WriteMm0.c | MSFT
|
---|
79 | Ia32/ReadMm7.c | MSFT
|
---|
80 | Ia32/ReadMm6.c | MSFT
|
---|
81 | Ia32/ReadMm5.c | MSFT
|
---|
82 | Ia32/ReadMm4.c | MSFT
|
---|
83 | Ia32/ReadMm3.c | MSFT
|
---|
84 | Ia32/ReadMm2.c | MSFT
|
---|
85 | Ia32/ReadMm1.c | MSFT
|
---|
86 | Ia32/ReadMm0.c | MSFT
|
---|
87 | Ia32/SwapBytes64.c | MSFT
|
---|
88 | Ia32/RRotU64.c | MSFT
|
---|
89 | Ia32/RShiftU64.c | MSFT
|
---|
90 | Ia32/ReadTsc.c | MSFT
|
---|
91 | Ia32/ReadEflags.c | MSFT
|
---|
92 | Ia32/ModU64x32.c | MSFT
|
---|
93 | Ia32/MultU64x64.c | MSFT
|
---|
94 | Ia32/MultU64x32.c | MSFT
|
---|
95 | Ia32/LShiftU64.c | MSFT
|
---|
96 | Ia32/LRotU64.c | MSFT
|
---|
97 | Ia32/FxRestore.c | MSFT
|
---|
98 | Ia32/FxSave.c | MSFT
|
---|
99 | Ia32/DivU64x32Remainder.c | MSFT
|
---|
100 | Ia32/DivU64x32.c | MSFT
|
---|
101 | Ia32/CpuPause.c | MSFT
|
---|
102 | Ia32/CpuBreakpoint.c | MSFT
|
---|
103 | Ia32/ARShiftU64.c | MSFT
|
---|
104 | Ia32/GccInline.c | GCC
|
---|
105 | Ia32/LongJump.nasm
|
---|
106 | Ia32/SetJump.nasm
|
---|
107 | Ia32/SwapBytes64.nasm| GCC
|
---|
108 | Ia32/DivU64x64Remainder.nasm
|
---|
109 | Ia32/DivU64x32Remainder.nasm| GCC
|
---|
110 | Ia32/ModU64x32.nasm| GCC
|
---|
111 | Ia32/DivU64x32.nasm| GCC
|
---|
112 | Ia32/MultU64x64.nasm| GCC
|
---|
113 | Ia32/MultU64x32.nasm| GCC
|
---|
114 | Ia32/RRotU64.nasm| GCC
|
---|
115 | Ia32/LRotU64.nasm| GCC
|
---|
116 | Ia32/ARShiftU64.nasm| GCC
|
---|
117 | Ia32/RShiftU64.nasm| GCC
|
---|
118 | Ia32/LShiftU64.nasm| GCC
|
---|
119 | Ia32/RdRand.nasm
|
---|
120 | Ia32/DivS64x64Remainder.c
|
---|
121 | Ia32/InternalSwitchStack.c | MSFT
|
---|
122 | Ia32/InternalSwitchStack.nasm | GCC
|
---|
123 | Ia32/Non-existing.c
|
---|
124 | Unaligned.c
|
---|
125 | X86MemoryFence.c | MSFT
|
---|
126 | X86FxSave.c
|
---|
127 | X86FxRestore.c
|
---|
128 | X86Msr.c
|
---|
129 | X86RdRand.c
|
---|
130 | X86SpeculationBarrier.c
|
---|
131 | X86UnitTestHost.c
|
---|
132 | IntelTdxNull.c
|
---|
133 |
|
---|
134 | [Sources.X64]
|
---|
135 | X64/LongJump.nasm
|
---|
136 | X64/SetJump.nasm
|
---|
137 | X64/SwitchStack.nasm
|
---|
138 | X64/CpuBreakpoint.c | MSFT
|
---|
139 | X64/CpuPause.nasm| MSFT
|
---|
140 | X64/ReadTsc.nasm| MSFT
|
---|
141 | X64/WriteMm7.nasm| MSFT
|
---|
142 | X64/WriteMm6.nasm| MSFT
|
---|
143 | X64/WriteMm5.nasm| MSFT
|
---|
144 | X64/WriteMm4.nasm| MSFT
|
---|
145 | X64/WriteMm3.nasm| MSFT
|
---|
146 | X64/WriteMm2.nasm| MSFT
|
---|
147 | X64/WriteMm1.nasm| MSFT
|
---|
148 | X64/WriteMm0.nasm| MSFT
|
---|
149 | X64/ReadMm7.nasm| MSFT
|
---|
150 | X64/ReadMm6.nasm| MSFT
|
---|
151 | X64/ReadMm5.nasm| MSFT
|
---|
152 | X64/ReadMm4.nasm| MSFT
|
---|
153 | X64/ReadMm3.nasm| MSFT
|
---|
154 | X64/ReadMm2.nasm| MSFT
|
---|
155 | X64/ReadMm1.nasm| MSFT
|
---|
156 | X64/ReadMm0.nasm| MSFT
|
---|
157 | X64/FxRestore.nasm| MSFT
|
---|
158 | X64/FxSave.nasm| MSFT
|
---|
159 | X64/ReadEflags.nasm| MSFT
|
---|
160 | X64/Non-existing.c
|
---|
161 | Math64.c
|
---|
162 | Unaligned.c
|
---|
163 | X86MemoryFence.c | MSFT
|
---|
164 | X86FxSave.c
|
---|
165 | X86FxRestore.c
|
---|
166 | X86Msr.c
|
---|
167 | X86RdRand.c
|
---|
168 | X86SpeculationBarrier.c
|
---|
169 | X64/GccInline.c | GCC
|
---|
170 | X64/RdRand.nasm
|
---|
171 | ChkStkGcc.c | GCC
|
---|
172 | X86UnitTestHost.c
|
---|
173 | IntelTdxNull.c
|
---|
174 |
|
---|
175 | [Sources.EBC]
|
---|
176 | Ebc/CpuBreakpoint.c
|
---|
177 | Ebc/SetJumpLongJump.c
|
---|
178 | Ebc/SwitchStack.c
|
---|
179 | Ebc/SpeculationBarrier.c
|
---|
180 | Unaligned.c
|
---|
181 | Math64.c
|
---|
182 |
|
---|
183 | [Sources.ARM]
|
---|
184 | Arm/InternalSwitchStack.c
|
---|
185 | Arm/Unaligned.c
|
---|
186 | Math64.c | MSFT
|
---|
187 |
|
---|
188 | Arm/SwitchStack.asm | MSFT
|
---|
189 | Arm/SetJumpLongJump.asm | MSFT
|
---|
190 | Arm/CpuPause.asm | MSFT
|
---|
191 | Arm/CpuBreakpoint.asm | MSFT
|
---|
192 | Arm/MemoryFence.asm | MSFT
|
---|
193 | Arm/SpeculationBarrier.asm | MSFT
|
---|
194 |
|
---|
195 | Arm/Math64.S | GCC
|
---|
196 | Arm/SwitchStack.S | GCC
|
---|
197 | Arm/SetJumpLongJump.S | GCC
|
---|
198 | Arm/CpuBreakpoint.S | GCC
|
---|
199 | Arm/MemoryFence.S | GCC
|
---|
200 | Arm/SpeculationBarrier.S | GCC
|
---|
201 |
|
---|
202 | [Sources.AARCH64]
|
---|
203 | Arm/InternalSwitchStack.c
|
---|
204 | Arm/Unaligned.c
|
---|
205 | Math64.c
|
---|
206 |
|
---|
207 | AArch64/MemoryFence.S | GCC
|
---|
208 | AArch64/SwitchStack.S | GCC
|
---|
209 | AArch64/SetJumpLongJump.S | GCC
|
---|
210 | AArch64/CpuBreakpoint.S | GCC
|
---|
211 | AArch64/SpeculationBarrier.S | GCC
|
---|
212 |
|
---|
213 | AArch64/MemoryFence.asm | MSFT
|
---|
214 | AArch64/SwitchStack.asm | MSFT
|
---|
215 | AArch64/SetJumpLongJump.asm | MSFT
|
---|
216 | AArch64/CpuBreakpoint.asm | MSFT
|
---|
217 | AArch64/SpeculationBarrier.asm | MSFT
|
---|
218 |
|
---|
219 | [Sources.RISCV64]
|
---|
220 | Math64.c
|
---|
221 | Unaligned.c
|
---|
222 | RiscV64/InternalSwitchStack.c
|
---|
223 | RiscV64/CpuBreakpoint.c
|
---|
224 | RiscV64/CpuPause.c
|
---|
225 | RiscV64/RiscVSetJumpLongJump.S | GCC
|
---|
226 | RiscV64/RiscVCpuBreakpoint.S | GCC
|
---|
227 | RiscV64/RiscVCpuPause.S | GCC
|
---|
228 | RiscV64/RiscVInterrupt.S | GCC
|
---|
229 | RiscV64/FlushCache.S | GCC
|
---|
230 |
|
---|
231 | [Packages]
|
---|
232 | MdePkg/MdePkg.dec
|
---|
233 |
|
---|
234 | [LibraryClasses]
|
---|
235 | PcdLib
|
---|
236 | DebugLib
|
---|
237 | BaseMemoryLib
|
---|
238 |
|
---|
239 | [Pcd]
|
---|
240 | gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength ## SOMETIMES_CONSUMES
|
---|
241 | gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength ## SOMETIMES_CONSUMES
|
---|
242 | gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength ## SOMETIMES_CONSUMES
|
---|
243 | gEfiMdePkgTokenSpaceGuid.PcdControlFlowEnforcementPropertyMask ## SOMETIMES_CONSUMES
|
---|
244 | gEfiMdePkgTokenSpaceGuid.PcdSpeculationBarrierType ## SOMETIMES_CONSUMES
|
---|
245 |
|
---|
246 | [FeaturePcd]
|
---|
247 | gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList ## CONSUMES
|
---|