VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/MdePkg/Library/BaseLib/BaseLib.inf@ 77599

Last change on this file since 77599 was 58467, checked in by vboxsync, 10 years ago

EFI/BaseLib.inf: Merge fix.

  • Property svn:eol-style set to native
File size: 13.2 KB
Line 
1## @file
2# Base Library implementation.
3#
4# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
5# Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
6# Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>
7#
8# This program and the accompanying materials
9# are licensed and made available under the terms and conditions of the BSD License
10# which accompanies this distribution. The full text of the license may be found at
11# http://opensource.org/licenses/bsd-license.php.
12# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14#
15#
16##
17
18[Defines]
19 INF_VERSION = 0x00010005
20 BASE_NAME = BaseLib
21 MODULE_UNI_FILE = BaseLib.uni
22 FILE_GUID = 27d67720-ea68-48ae-93da-a3a074c90e30
23 MODULE_TYPE = BASE
24 VERSION_STRING = 1.0
25 LIBRARY_CLASS = BaseLib
26
27#
28# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64
29#
30
31[Sources]
32 CheckSum.c
33 SwitchStack.c
34 SwapBytes64.c
35 SwapBytes32.c
36 SwapBytes16.c
37 LongJump.c
38 SetJump.c
39 RShiftU64.c
40 RRotU64.c
41 RRotU32.c
42 MultU64x64.c
43 MultU64x32.c
44 MultS64x64.c
45 ModU64x32.c
46 LShiftU64.c
47 LRotU64.c
48 LRotU32.c
49 LowBitSet64.c
50 LowBitSet32.c
51 HighBitSet64.c
52 HighBitSet32.c
53 GetPowerOfTwo64.c
54 GetPowerOfTwo32.c
55 DivU64x64Remainder.c
56 DivU64x32Remainder.c
57 DivU64x32.c
58 DivS64x64Remainder.c
59 ARShiftU64.c
60 BitField.c
61 CpuDeadLoop.c
62 Cpu.c
63 LinkedList.c
64 SafeString.c
65 String.c
66 BaseLibInternals.h
67
68[Sources.Ia32]
69 Ia32/Wbinvd.c | MSFT
70 Ia32/WriteMm7.c | MSFT
71 Ia32/WriteMm6.c | MSFT
72 Ia32/WriteMm5.c | MSFT
73 Ia32/WriteMm4.c | MSFT
74 Ia32/WriteMm3.c | MSFT
75 Ia32/WriteMm2.c | MSFT
76 Ia32/WriteMm1.c | MSFT
77 Ia32/WriteMm0.c | MSFT
78 Ia32/WriteLdtr.c | MSFT
79 Ia32/WriteIdtr.c | MSFT
80 Ia32/WriteGdtr.c | MSFT
81 Ia32/WriteDr7.c | MSFT
82 Ia32/WriteDr6.c | MSFT
83 Ia32/WriteDr5.c | MSFT
84 Ia32/WriteDr4.c | MSFT
85 Ia32/WriteDr3.c | MSFT
86 Ia32/WriteDr2.c | MSFT
87 Ia32/WriteDr1.c | MSFT
88 Ia32/WriteDr0.c | MSFT
89 Ia32/WriteCr4.c | MSFT
90 Ia32/WriteCr3.c | MSFT
91 Ia32/WriteCr2.c | MSFT
92 Ia32/WriteCr0.c | MSFT
93 Ia32/WriteMsr64.c | MSFT
94 Ia32/SwapBytes64.c | MSFT
95 Ia32/SetJump.c | MSFT
96 Ia32/RRotU64.c | MSFT
97 Ia32/RShiftU64.c | MSFT
98 Ia32/ReadPmc.c | MSFT
99 Ia32/ReadTsc.c | MSFT
100 Ia32/ReadLdtr.c | MSFT
101 Ia32/ReadIdtr.c | MSFT
102 Ia32/ReadGdtr.c | MSFT
103 Ia32/ReadTr.c | MSFT
104 Ia32/ReadSs.c | MSFT
105 Ia32/ReadGs.c | MSFT
106 Ia32/ReadFs.c | MSFT
107 Ia32/ReadEs.c | MSFT
108 Ia32/ReadDs.c | MSFT
109 Ia32/ReadCs.c | MSFT
110 Ia32/ReadMsr64.c | MSFT
111 Ia32/ReadMm7.c | MSFT
112 Ia32/ReadMm6.c | MSFT
113 Ia32/ReadMm5.c | MSFT
114 Ia32/ReadMm4.c | MSFT
115 Ia32/ReadMm3.c | MSFT
116 Ia32/ReadMm2.c | MSFT
117 Ia32/ReadMm1.c | MSFT
118 Ia32/ReadMm0.c | MSFT
119 Ia32/ReadEflags.c | MSFT
120 Ia32/ReadDr7.c | MSFT
121 Ia32/ReadDr6.c | MSFT
122 Ia32/ReadDr5.c | MSFT
123 Ia32/ReadDr4.c | MSFT
124 Ia32/ReadDr3.c | MSFT
125 Ia32/ReadDr2.c | MSFT
126 Ia32/ReadDr1.c | MSFT
127 Ia32/ReadDr0.c | MSFT
128 Ia32/ReadCr4.c | MSFT
129 Ia32/ReadCr3.c | MSFT
130 Ia32/ReadCr2.c | MSFT
131 Ia32/ReadCr0.c | MSFT
132 Ia32/Mwait.c | MSFT
133 Ia32/Monitor.c | MSFT
134 Ia32/ModU64x32.c | MSFT
135 Ia32/MultU64x64.c | MSFT
136 Ia32/MultU64x32.c | MSFT
137 Ia32/LShiftU64.c | MSFT
138 Ia32/LRotU64.c | MSFT
139 Ia32/LongJump.c | MSFT
140 Ia32/Invd.c | MSFT
141 Ia32/FxRestore.c | MSFT
142 Ia32/FxSave.c | MSFT
143 Ia32/FlushCacheLine.c | MSFT
144 Ia32/EnablePaging32.c | MSFT
145 Ia32/EnableInterrupts.c | MSFT
146 Ia32/EnableDisableInterrupts.c | MSFT
147 Ia32/DivU64x64Remainder.asm | MSFT
148 Ia32/DivU64x32Remainder.c | MSFT
149 Ia32/DivU64x32.c | MSFT
150 Ia32/DisablePaging32.c | MSFT
151 Ia32/DisableInterrupts.c | MSFT
152 Ia32/CpuPause.c | MSFT
153 Ia32/CpuIdEx.c | MSFT
154 Ia32/CpuId.c | MSFT
155 Ia32/CpuBreakpoint.c | MSFT
156 Ia32/ARShiftU64.c | MSFT
157 Ia32/Thunk16.asm | MSFT
158 Ia32/EnablePaging64.asm | MSFT
159 Ia32/EnableCache.c | MSFT
160 Ia32/DisableCache.c | MSFT
161
162 Ia32/Wbinvd.asm | INTEL
163 Ia32/WriteMm7.asm | INTEL
164 Ia32/WriteMm6.asm | INTEL
165 Ia32/WriteMm5.asm | INTEL
166 Ia32/WriteMm4.asm | INTEL
167 Ia32/WriteMm3.asm | INTEL
168 Ia32/WriteMm2.asm | INTEL
169 Ia32/WriteMm1.asm | INTEL
170 Ia32/WriteMm0.asm | INTEL
171 Ia32/WriteLdtr.asm | INTEL
172 Ia32/WriteIdtr.asm | INTEL
173 Ia32/WriteGdtr.asm | INTEL
174 Ia32/WriteDr7.asm | INTEL
175 Ia32/WriteDr6.asm | INTEL
176 Ia32/WriteDr5.asm | INTEL
177 Ia32/WriteDr4.asm | INTEL
178 Ia32/WriteDr3.asm | INTEL
179 Ia32/WriteDr2.asm | INTEL
180 Ia32/WriteDr1.asm | INTEL
181 Ia32/WriteDr0.asm | INTEL
182 Ia32/WriteCr4.asm | INTEL
183 Ia32/WriteCr3.asm | INTEL
184 Ia32/WriteCr2.asm | INTEL
185 Ia32/WriteCr0.asm | INTEL
186 Ia32/WriteMsr64.asm | INTEL
187 Ia32/SwapBytes64.asm | INTEL
188 Ia32/SetJump.asm | INTEL
189 Ia32/RRotU64.asm | INTEL
190 Ia32/RShiftU64.asm | INTEL
191 Ia32/ReadPmc.asm | INTEL
192 Ia32/ReadTsc.asm | INTEL
193 Ia32/ReadLdtr.asm | INTEL
194 Ia32/ReadIdtr.asm | INTEL
195 Ia32/ReadGdtr.asm | INTEL
196 Ia32/ReadTr.asm | INTEL
197 Ia32/ReadSs.asm | INTEL
198 Ia32/ReadGs.asm | INTEL
199 Ia32/ReadFs.asm | INTEL
200 Ia32/ReadEs.asm | INTEL
201 Ia32/ReadDs.asm | INTEL
202 Ia32/ReadCs.asm | INTEL
203 Ia32/ReadMsr64.asm | INTEL
204 Ia32/ReadMm7.asm | INTEL
205 Ia32/ReadMm6.asm | INTEL
206 Ia32/ReadMm5.asm | INTEL
207 Ia32/ReadMm4.asm | INTEL
208 Ia32/ReadMm3.asm | INTEL
209 Ia32/ReadMm2.asm | INTEL
210 Ia32/ReadMm1.asm | INTEL
211 Ia32/ReadMm0.asm | INTEL
212 Ia32/ReadEflags.asm | INTEL
213 Ia32/ReadDr7.asm | INTEL
214 Ia32/ReadDr6.asm | INTEL
215 Ia32/ReadDr5.asm | INTEL
216 Ia32/ReadDr4.asm | INTEL
217 Ia32/ReadDr3.asm | INTEL
218 Ia32/ReadDr2.asm | INTEL
219 Ia32/ReadDr1.asm | INTEL
220 Ia32/ReadDr0.asm | INTEL
221 Ia32/ReadCr4.asm | INTEL
222 Ia32/ReadCr3.asm | INTEL
223 Ia32/ReadCr2.asm | INTEL
224 Ia32/ReadCr0.asm | INTEL
225 Ia32/Mwait.asm | INTEL
226 Ia32/Monitor.asm | INTEL
227 Ia32/ModU64x32.asm | INTEL
228 Ia32/MultU64x64.asm | INTEL
229 Ia32/MultU64x32.asm | INTEL
230 Ia32/LShiftU64.asm | INTEL
231 Ia32/LRotU64.asm | INTEL
232 Ia32/LongJump.asm | INTEL
233 Ia32/Invd.asm | INTEL
234 Ia32/FxRestore.asm | INTEL
235 Ia32/FxSave.asm | INTEL
236 Ia32/FlushCacheLine.asm | INTEL
237 Ia32/EnablePaging32.asm | INTEL
238 Ia32/EnableInterrupts.asm | INTEL
239 Ia32/EnableDisableInterrupts.asm | INTEL
240 Ia32/DivU64x64Remainder.asm | INTEL
241 Ia32/DivU64x32Remainder.asm | INTEL
242 Ia32/DivU64x32.asm | INTEL
243 Ia32/DisablePaging32.asm | INTEL
244 Ia32/DisableInterrupts.asm | INTEL
245 Ia32/CpuPause.asm | INTEL
246 Ia32/CpuIdEx.asm | INTEL
247 Ia32/CpuId.asm | INTEL
248 Ia32/CpuBreakpoint.asm | INTEL
249 Ia32/ARShiftU64.asm | INTEL
250 Ia32/Thunk16.asm | INTEL
251 Ia32/EnablePaging64.asm | INTEL
252 Ia32/EnableCache.asm | INTEL
253 Ia32/DisableCache.asm | INTEL
254
255 Ia32/GccInline.c | GCC
256# VBox begin (yasm doesn't like the nasm variant) - original:
257# Ia32/Thunk16.nasm | GCC
258 Ia32/Thunk16.asm | GCC
259# VBox end
260 Ia32/EnableDisableInterrupts.S | GCC
261 Ia32/EnablePaging64.S | GCC
262 Ia32/DisablePaging32.S | GCC
263 Ia32/EnablePaging32.S | GCC
264 Ia32/Mwait.S | GCC
265 Ia32/Monitor.S | GCC
266 Ia32/CpuIdEx.S | GCC
267 Ia32/CpuId.S | GCC
268 Ia32/LongJump.S | GCC
269 Ia32/SetJump.S | GCC
270 Ia32/SwapBytes64.S | GCC
271 Ia32/DivU64x64Remainder.S | GCC
272 Ia32/DivU64x32Remainder.S | GCC
273 Ia32/ModU64x32.S | GCC
274 Ia32/DivU64x32.S | GCC
275 Ia32/MultU64x64.S | GCC
276 Ia32/MultU64x32.S | GCC
277 Ia32/RRotU64.S | GCC
278 Ia32/LRotU64.S | GCC
279 Ia32/ARShiftU64.S | GCC
280 Ia32/RShiftU64.S | GCC
281 Ia32/LShiftU64.S | GCC
282 Ia32/EnableCache.S | GCC
283 Ia32/DisableCache.S | GCC
284
285 Ia32/DivS64x64Remainder.c
286 Ia32/InternalSwitchStack.c | MSFT
287 Ia32/InternalSwitchStack.c | INTEL
288 Ia32/InternalSwitchStack.S | GCC
289 Ia32/Non-existing.c
290 Unaligned.c
291 X86WriteIdtr.c
292 X86WriteGdtr.c
293 X86Thunk.c
294 X86ReadIdtr.c
295 X86ReadGdtr.c
296 X86Msr.c
297 X86MemoryFence.c | MSFT
298 X86MemoryFence.c | INTEL
299 X86GetInterruptState.c
300 X86FxSave.c
301 X86FxRestore.c
302 X86EnablePaging64.c
303 X86EnablePaging32.c
304 X86DisablePaging64.c
305 X86DisablePaging32.c
306
307# VBox - enable this for non-optimized IA32 builds.
308# # Compiler helper (C RunTime) functions
309# ../../../StdLib/LibC/CRT/Ia32/llmul.c | MSFT # __allmul
310# ../../../StdLib/LibC/CRT/Ia32/llshl.c | MSFT # __allshl
311# ../../../StdLib/LibC/CRT/Ia32/ulldiv.c | MSFT # __aulldiv
312# ../../../StdLib/LibC/CRT/Ia32/ullrem.c | MSFT # __aullrem
313# ../../../StdLib/LibC/CRT/Ia32/ullshr.c | MSFT # __aullshr
314# ../../../StdLib/LibC/CRT/Ia32/lldiv.c | MSFT # __alldiv
315# ../../../StdLib/LibC/CRT/Ia32/llrem.c | MSFT # __allrem
316# ../../../StdLib/LibC/CRT/Ia32/lldvrm.c | MSFT # __alldvrm
317# ../../../StdLib/LibC/CRT/Ia32/ulldvrm.c | MSFT # __aulldvrm
318# VBox - end
319
320[Sources.X64]
321 X64/Thunk16.asm
322 X64/CpuPause.asm
323 X64/EnableDisableInterrupts.asm
324 X64/DisableInterrupts.asm
325 X64/EnableInterrupts.asm
326 X64/FlushCacheLine.asm
327 X64/Invd.asm
328 X64/Wbinvd.asm
329 X64/DisablePaging64.asm
330 X64/Mwait.asm
331 X64/Monitor.asm
332 X64/ReadPmc.asm
333 X64/ReadTsc.asm
334 X64/WriteMm7.asm
335 X64/WriteMm6.asm
336 X64/WriteMm5.asm
337 X64/WriteMm4.asm
338 X64/WriteMm3.asm
339 X64/WriteMm2.asm
340 X64/WriteMm1.asm
341 X64/WriteMm0.asm
342 X64/ReadMm7.asm
343 X64/ReadMm6.asm
344 X64/ReadMm5.asm
345 X64/ReadMm4.asm
346 X64/ReadMm3.asm
347 X64/ReadMm2.asm
348 X64/ReadMm1.asm
349 X64/ReadMm0.asm
350 X64/FxRestore.asm
351 X64/FxSave.asm
352 X64/WriteLdtr.asm
353 X64/ReadLdtr.asm
354 X64/WriteIdtr.asm
355 X64/ReadIdtr.asm
356 X64/WriteGdtr.asm
357 X64/ReadGdtr.asm
358 X64/ReadTr.asm
359 X64/ReadSs.asm
360 X64/ReadGs.asm
361 X64/ReadFs.asm
362 X64/ReadEs.asm
363 X64/ReadDs.asm
364 X64/ReadCs.asm
365 X64/WriteDr7.asm
366 X64/WriteDr6.asm
367 X64/WriteDr5.asm
368 X64/WriteDr4.asm
369 X64/WriteDr3.asm
370 X64/WriteDr2.asm
371 X64/WriteDr1.asm
372 X64/WriteDr0.asm
373 X64/ReadDr7.asm
374 X64/ReadDr6.asm
375 X64/ReadDr5.asm
376 X64/ReadDr4.asm
377 X64/ReadDr3.asm
378 X64/ReadDr2.asm
379 X64/ReadDr1.asm
380 X64/ReadDr0.asm
381 X64/WriteCr4.asm
382 X64/WriteCr3.asm
383 X64/WriteCr2.asm
384 X64/WriteCr0.asm
385 X64/ReadCr4.asm
386 X64/ReadCr3.asm
387 X64/ReadCr2.asm
388 X64/ReadCr0.asm
389 X64/ReadEflags.asm
390 X64/CpuIdEx.asm
391 X64/CpuId.asm
392 X64/LongJump.asm
393 X64/SetJump.asm
394 X64/SwitchStack.asm
395 X64/EnableCache.asm
396 X64/DisableCache.asm
397
398 X64/CpuBreakpoint.c | MSFT
399 X64/WriteMsr64.c | MSFT
400 X64/ReadMsr64.c | MSFT
401
402 X64/CpuBreakpoint.asm | INTEL
403 X64/WriteMsr64.asm | INTEL
404 X64/ReadMsr64.asm | INTEL
405
406 X64/Non-existing.c
407 Math64.c
408 Unaligned.c
409 X86WriteIdtr.c
410 X86WriteGdtr.c
411 X86Thunk.c
412 X86ReadIdtr.c
413 X86ReadGdtr.c
414 X86Msr.c
415 X86MemoryFence.c | MSFT
416 X86MemoryFence.c | INTEL
417 X86GetInterruptState.c
418 X86FxSave.c
419 X86FxRestore.c
420 X86EnablePaging64.c
421 X86EnablePaging32.c
422 X86DisablePaging64.c
423 X86DisablePaging32.c
424 X64/GccInline.c | GCC
425# VBox begin (yasm doesn't like the nasm variant) - original:
426# Ia32/Thunk16.nasm | GCC
427 Ia32/Thunk16.asm | GCC
428# VBox end
429 X64/SwitchStack.S | GCC
430 X64/SetJump.S | GCC
431 X64/LongJump.S | GCC
432 X64/EnableDisableInterrupts.S | GCC
433 X64/DisablePaging64.S | GCC
434 X64/CpuId.S | GCC
435 X64/CpuIdEx.S | GCC
436 X64/EnableCache.S | GCC
437 X64/DisableCache.S | GCC
438 ChkStkGcc.c | GCC
439
440[Sources.IPF]
441 Ipf/AccessGp.s
442 Ipf/ReadCpuid.s
443 Ipf/ExecFc.s
444 Ipf/AsmPalCall.s
445 Ipf/AccessPsr.s
446 Ipf/AccessPmr.s
447 Ipf/AccessKr.s
448 Ipf/AccessKr7.s
449 Ipf/AccessGcr.s
450 Ipf/AccessEicr.s
451 Ipf/AccessDbr.s
452 Ipf/AccessMsr.s | INTEL
453 Ipf/AccessMsr.s | GCC
454 Ipf/AccessMsrDb.s | MSFT
455 Ipf/InternalFlushCacheRange.s
456 Ipf/FlushCacheRange.c
457 Ipf/InternalSwitchStack.c
458 Ipf/GetInterruptState.s
459 Ipf/CpuPause.s
460 Ipf/CpuBreakpoint.c | INTEL
461 Ipf/CpuBreakpointMsc.c | MSFT
462 Ipf/AsmCpuMisc.s | GCC
463 Ipf/Unaligned.c
464 Ipf/SwitchStack.s
465 Ipf/LongJmp.s
466 Ipf/SetJmp.s
467 Ipf/ReadCr.s
468 Ipf/ReadAr.s
469 Ipf/Ia64gen.h
470 Ipf/Asm.h
471 Math64.c
472
473[Sources.EBC]
474 Ebc/CpuBreakpoint.c
475 Ebc/SetJumpLongJump.c
476 Ebc/SwitchStack.c
477 Unaligned.c
478 Math64.c
479
480[Sources.ARM]
481 Arm/InternalSwitchStack.c
482 Arm/Unaligned.c
483 Math64.c | RVCT
484
485 Arm/SwitchStack.asm | RVCT
486 Arm/SetJumpLongJump.asm | RVCT
487 Arm/DisableInterrupts.asm | RVCT
488 Arm/EnableInterrupts.asm | RVCT
489 Arm/GetInterruptsState.asm | RVCT
490 Arm/CpuPause.asm | RVCT
491 Arm/CpuBreakpoint.asm | RVCT
492 Arm/MemoryFence.asm | RVCT
493
494 Arm/Math64.S | GCC
495 Arm/SwitchStack.S | GCC
496 Arm/EnableInterrupts.S | GCC
497 Arm/DisableInterrupts.S | GCC
498 Arm/GetInterruptsState.S | GCC
499 Arm/SetJumpLongJump.S | GCC
500 Arm/CpuBreakpoint.S | GCC
501 Arm/MemoryFence.S | GCC
502
503[Sources.AARCH64]
504 Arm/InternalSwitchStack.c
505 Arm/Unaligned.c
506 Math64.c
507
508 AArch64/MemoryFence.S | GCC
509 AArch64/SwitchStack.S | GCC
510 AArch64/EnableInterrupts.S | GCC
511 AArch64/DisableInterrupts.S | GCC
512 AArch64/GetInterruptsState.S | GCC
513 AArch64/SetJumpLongJump.S | GCC
514 AArch64/CpuBreakpoint.S | GCC
515
516[Packages]
517 MdePkg/MdePkg.dec
518
519[LibraryClasses]
520 PcdLib
521 DebugLib
522 BaseMemoryLib
523
524[Pcd]
525 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength ## SOMETIMES_CONSUMES
526 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength ## SOMETIMES_CONSUMES
527 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength ## SOMETIMES_CONSUMES
528 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask ## SOMETIMES_CONSUMES
529
530[FeaturePcd]
531 gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList ## CONSUMES
532
533# VBox - enable this for non-optimized IA32 builds.
534#[BuildOptions]
535# MSFT:*_*_*_CC_FLAGS = /GL-
536# VBox - end
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette