#/** @file # Component description file for Base Library # # Base Library implementation. # Copyright (c) 2007 - 2007, Intel Corporation. # # All rights reserved. This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License # which accompanies this distribution. The full text of the license may be found at # http://opensource.org/licenses/bsd-license.php # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. # # #**/ ################################################################################ # # Defines Section - statements that will be processed to create a Makefile. # ################################################################################ [Defines] INF_VERSION = 0x00010005 BASE_NAME = BaseLib FILE_GUID = 27d67720-ea68-48ae-93da-a3a074c90e30 MODULE_TYPE = BASE VERSION_STRING = 1.0 LIBRARY_CLASS = BaseLib EDK_RELEASE_VERSION = 0x00020000 EFI_SPECIFICATION_VERSION = 0x00020000 # # The following information is for reference only and not required by the build tools. # # VALID_ARCHITECTURES = IA32 X64 IPF EBC # ################################################################################ # # Sources Section - list of files that are required for the build to succeed. # ################################################################################ [Sources.common] CheckSum.c SwitchStack.c SwapBytes64.c SwapBytes32.c SwapBytes16.c LongJump.c SetJump.c RShiftU64.c RRotU64.c RRotU32.c MultU64x64.c MultU64x32.c MultS64x64.c ModU64x32.c LShiftU64.c LRotU64.c LRotU32.c LowBitSet64.c LowBitSet32.c HighBitSet64.c HighBitSet32.c GetPowerOfTwo64.c GetPowerOfTwo32.c DivU64x64Remainder.c DivU64x32Remainder.c DivU64x32.c DivS64x64Remainder.c ARShiftU64.c BitField.c CpuDeadLoop.c Cpu.c LinkedList.c String.c BaseLibInternals.h [Sources.Ia32] Ia32/Wbinvd.c || MSFT ||| Ia32/WriteMm7.c || MSFT ||| Ia32/WriteMm6.c || MSFT ||| Ia32/WriteMm5.c || MSFT ||| Ia32/WriteMm4.c || MSFT ||| Ia32/WriteMm3.c || MSFT ||| Ia32/WriteMm2.c || MSFT ||| Ia32/WriteMm1.c || MSFT ||| Ia32/WriteMm0.c || MSFT ||| Ia32/WriteLdtr.c || MSFT ||| Ia32/WriteIdtr.c || MSFT ||| Ia32/WriteGdtr.c || MSFT ||| Ia32/WriteDr7.c || MSFT ||| Ia32/WriteDr6.c || MSFT ||| Ia32/WriteDr5.c || MSFT ||| Ia32/WriteDr4.c || MSFT ||| Ia32/WriteDr3.c || MSFT ||| Ia32/WriteDr2.c || MSFT ||| Ia32/WriteDr1.c || MSFT ||| Ia32/WriteDr0.c || MSFT ||| Ia32/WriteCr4.c || MSFT ||| Ia32/WriteCr3.c || MSFT ||| Ia32/WriteCr2.c || MSFT ||| Ia32/WriteCr0.c || MSFT ||| Ia32/WriteMsr64.c || MSFT ||| Ia32/Thunk16.asm Ia32/SwapBytes64.c || MSFT ||| Ia32/SetJump.c || MSFT ||| Ia32/RRotU64.c || MSFT ||| Ia32/RShiftU64.c || MSFT ||| Ia32/ReadPmc.c || MSFT ||| Ia32/ReadTsc.c || MSFT ||| Ia32/ReadLdtr.c || MSFT ||| Ia32/ReadIdtr.c || MSFT ||| Ia32/ReadGdtr.c || MSFT ||| Ia32/ReadTr.c || MSFT ||| Ia32/ReadSs.c || MSFT ||| Ia32/ReadGs.c || MSFT ||| Ia32/ReadFs.c || MSFT ||| Ia32/ReadEs.c || MSFT ||| Ia32/ReadDs.c || MSFT ||| Ia32/ReadCs.c || MSFT ||| Ia32/ReadMsr64.c || MSFT ||| Ia32/ReadMm7.c || MSFT ||| Ia32/ReadMm6.c || MSFT ||| Ia32/ReadMm5.c || MSFT ||| Ia32/ReadMm4.c || MSFT ||| Ia32/ReadMm3.c || MSFT ||| Ia32/ReadMm2.c || MSFT ||| Ia32/ReadMm1.c || MSFT ||| Ia32/ReadMm0.c || MSFT ||| Ia32/ReadEflags.c || MSFT ||| Ia32/ReadDr7.c || MSFT ||| Ia32/ReadDr6.c || MSFT ||| Ia32/ReadDr5.c || MSFT ||| Ia32/ReadDr4.c || MSFT ||| Ia32/ReadDr3.c || MSFT ||| Ia32/ReadDr2.c || MSFT ||| Ia32/ReadDr1.c || MSFT ||| Ia32/ReadDr0.c || MSFT ||| Ia32/ReadCr4.c || MSFT ||| Ia32/ReadCr3.c || MSFT ||| Ia32/ReadCr2.c || MSFT ||| Ia32/ReadCr0.c || MSFT ||| Ia32/Mwait.c || MSFT ||| Ia32/Monitor.c || MSFT ||| Ia32/ModU64x32.c || MSFT ||| Ia32/MultU64x64.c || MSFT ||| Ia32/MultU64x32.c || MSFT ||| Ia32/LShiftU64.c || MSFT ||| Ia32/LRotU64.c || MSFT ||| Ia32/LongJump.c || MSFT ||| Ia32/Invd.c || MSFT ||| Ia32/InterlockedCompareExchange64.c || MSFT ||| Ia32/InterlockedCompareExchange32.c || MSFT ||| Ia32/InterlockedDecrement.c || MSFT ||| Ia32/InterlockedIncrement.c || MSFT ||| Ia32/FxRestore.c || MSFT ||| Ia32/FxSave.c || MSFT ||| Ia32/FlushCacheLine.c || MSFT ||| Ia32/EnablePaging64.asm Ia32/EnablePaging32.c || MSFT ||| Ia32/EnableInterrupts.c || MSFT ||| Ia32/EnableDisableInterrupts.c || MSFT ||| Ia32/DivU64x64Remainder.c || MSFT ||| Ia32/DivU64x32Remainder.c || MSFT ||| Ia32/DivU64x32.c || MSFT ||| Ia32/DisablePaging32.c || MSFT ||| Ia32/DisableInterrupts.c || MSFT ||| Ia32/CpuPause.c || MSFT ||| Ia32/CpuIdEx.c || MSFT ||| Ia32/CpuId.c || MSFT ||| Ia32/CpuSleep.c || MSFT ||| Ia32/CpuFlushTlb.c || MSFT ||| Ia32/CpuBreakpoint.c || MSFT ||| Ia32/ARShiftU64.c || MSFT ||| Ia32/Thunk16.S || GCC ||| Ia32/CpuFlushTlb.S || GCC ||| Ia32/CpuBreakpoint.S || GCC ||| Ia32/CpuPause.S || GCC ||| Ia32/CpuSleep.S || GCC ||| Ia32/EnableDisableInterrupts.S || GCC ||| Ia32/DisableInterrupts.S || GCC ||| Ia32/EnableInterrupts.S || GCC ||| Ia32/InterlockedCompareExchange64.S || GCC ||| Ia32/InterlockedCompareExchange32.S || GCC ||| Ia32/InterlockedDecrement.S || GCC ||| Ia32/InterlockedIncrement.S || GCC ||| Ia32/FlushCacheLine.S || GCC ||| Ia32/Invd.S || GCC ||| Ia32/Wbinvd.S || GCC ||| Ia32/EnablePaging64.S || GCC ||| Ia32/DisablePaging32.S || GCC ||| Ia32/EnablePaging32.S || GCC ||| Ia32/Mwait.S || GCC ||| Ia32/Monitor.S || GCC ||| Ia32/ReadPmc.S || GCC ||| Ia32/ReadTsc.S || GCC ||| Ia32/WriteMm7.S || GCC ||| Ia32/WriteMm6.S || GCC ||| Ia32/WriteMm5.S || GCC ||| Ia32/WriteMm4.S || GCC ||| Ia32/WriteMm3.S || GCC ||| Ia32/WriteMm2.S || GCC ||| Ia32/WriteMm1.S || GCC ||| Ia32/WriteMm0.S || GCC ||| Ia32/ReadMm7.S || GCC ||| Ia32/ReadMm6.S || GCC ||| Ia32/ReadMm5.S || GCC ||| Ia32/ReadMm4.S || GCC ||| Ia32/ReadMm3.S || GCC ||| Ia32/ReadMm2.S || GCC ||| Ia32/ReadMm1.S || GCC ||| Ia32/ReadMm0.S || GCC ||| Ia32/FxRestore.S || GCC ||| Ia32/FxSave.S || GCC ||| Ia32/WriteLdtr.S || GCC ||| Ia32/ReadLdtr.S || GCC ||| Ia32/WriteIdtr.S || GCC ||| Ia32/ReadIdtr.S || GCC ||| Ia32/WriteGdtr.S || GCC ||| Ia32/ReadGdtr.S || GCC ||| Ia32/ReadTr.S || GCC ||| Ia32/ReadSs.S || GCC ||| Ia32/ReadGs.S || GCC ||| Ia32/ReadFs.S || GCC ||| Ia32/ReadEs.S || GCC ||| Ia32/ReadDs.S || GCC ||| Ia32/ReadCs.S || GCC ||| Ia32/WriteDr7.S || GCC ||| Ia32/WriteDr6.S || GCC ||| Ia32/WriteDr5.S || GCC ||| Ia32/WriteDr4.S || GCC ||| Ia32/WriteDr3.S || GCC ||| Ia32/WriteDr2.S || GCC ||| Ia32/WriteDr1.S || GCC ||| Ia32/WriteDr0.S || GCC ||| Ia32/ReadDr7.S || GCC ||| Ia32/ReadDr6.S || GCC ||| Ia32/ReadDr5.S || GCC ||| Ia32/ReadDr4.S || GCC ||| Ia32/ReadDr3.S || GCC ||| Ia32/ReadDr2.S || GCC ||| Ia32/ReadDr1.S || GCC ||| Ia32/ReadDr0.S || GCC ||| Ia32/WriteCr4.S || GCC ||| Ia32/WriteCr3.S || GCC ||| Ia32/WriteCr2.S || GCC ||| Ia32/WriteCr0.S || GCC ||| Ia32/ReadCr4.S || GCC ||| Ia32/ReadCr3.S || GCC ||| Ia32/ReadCr2.S || GCC ||| Ia32/ReadCr0.S || GCC ||| Ia32/WriteMsr64.S || GCC ||| Ia32/ReadMsr64.S || GCC ||| Ia32/ReadEflags.S || GCC ||| Ia32/CpuIdEx.S || GCC ||| Ia32/CpuId.S || GCC ||| Ia32/LongJump.S || GCC ||| Ia32/SetJump.S || GCC ||| Ia32/SwapBytes64.S || GCC ||| Ia32/DivU64x64Remainder.S || GCC ||| Ia32/DivU64x32Remainder.S || GCC ||| Ia32/ModU64x32.S || GCC ||| Ia32/DivU64x32.S || GCC ||| Ia32/MultU64x64.S || GCC ||| Ia32/MultU64x32.S || GCC ||| Ia32/RRotU64.S || GCC ||| Ia32/LRotU64.S || GCC ||| Ia32/ARShiftU64.S || GCC ||| Ia32/RShiftU64.S || GCC ||| Ia32/LShiftU64.S || GCC ||| Ia32/DivS64x64Remainder.c Ia32/InternalSwitchStack.c Ia32/Non-existing.c Unaligned.c x86WriteIdtr.c x86WriteGdtr.c x86Thunk.c x86ReadIdtr.c x86ReadGdtr.c x86Msr.c x86MemoryFence.c x86GetInterruptState.c x86FxSave.c x86FxRestore.c x86EnablePaging64.c x86EnablePaging32.c x86DisablePaging64.c x86DisablePaging32.c Synchronization.c || INTEL ||| SynchronizationMsc.c || MSFT ||| SynchronizationGcc.c || GCC ||| [Sources.X64] X64/Thunk16.asm X64/CpuFlushTlb.asm X64/CpuBreakpoint.c || MSFT ||| X64/CpuPause.asm X64/CpuSleep.asm X64/EnableDisableInterrupts.asm X64/DisableInterrupts.asm X64/EnableInterrupts.asm X64/InterlockedCompareExchange64.asm || MSFT ||| X64/InterlockedCompareExchange32.asm || MSFT ||| X64/InterlockedDecrement.c || MSFT ||| X64/InterlockedIncrement.c || MSFT ||| X64/FlushCacheLine.asm X64/Invd.asm X64/Wbinvd.asm X64/DisablePaging64.asm X64/EnablePaging64.asm X64/Mwait.asm X64/Monitor.asm X64/ReadPmc.asm X64/ReadTsc.asm X64/WriteMm7.asm X64/WriteMm6.asm X64/WriteMm5.asm X64/WriteMm4.asm X64/WriteMm3.asm X64/WriteMm2.asm X64/WriteMm1.asm X64/WriteMm0.asm X64/ReadMm7.asm X64/ReadMm6.asm X64/ReadMm5.asm X64/ReadMm4.asm X64/ReadMm3.asm X64/ReadMm2.asm X64/ReadMm1.asm X64/ReadMm0.asm X64/FxRestore.asm X64/FxSave.asm X64/WriteLdtr.asm X64/ReadLdtr.asm X64/WriteIdtr.asm X64/ReadIdtr.asm X64/WriteGdtr.asm X64/ReadGdtr.asm X64/ReadTr.asm X64/ReadSs.asm X64/ReadGs.asm X64/ReadFs.asm X64/ReadEs.asm X64/ReadDs.asm X64/ReadCs.asm X64/WriteDr7.asm X64/WriteDr6.asm X64/WriteDr5.asm X64/WriteDr4.asm X64/WriteDr3.asm X64/WriteDr2.asm X64/WriteDr1.asm X64/WriteDr0.asm X64/ReadDr7.asm X64/ReadDr6.asm X64/ReadDr5.asm X64/ReadDr4.asm X64/ReadDr3.asm X64/ReadDr2.asm X64/ReadDr1.asm X64/ReadDr0.asm X64/WriteCr4.asm X64/WriteCr3.asm X64/WriteCr2.asm X64/WriteCr0.asm X64/ReadCr4.asm X64/ReadCr3.asm X64/ReadCr2.asm X64/ReadCr0.asm X64/WriteMsr64.c || MSFT ||| X64/ReadMsr64.c || MSFT ||| X64/ReadEflags.asm X64/CpuIdEx.asm X64/CpuId.asm X64/LongJump.asm X64/SetJump.asm X64/SwitchStack.asm X64/Non-existing.c Math64.c Unaligned.c x86WriteIdtr.c x86WriteGdtr.c x86Thunk.c x86ReadIdtr.c x86ReadGdtr.c x86Msr.c x86MemoryFence.c x86GetInterruptState.c x86FxSave.c x86FxRestore.c x86EnablePaging64.c x86EnablePaging32.c x86DisablePaging64.c x86DisablePaging32.c X64/WriteMsr64.S || GCC ||| X64/WriteMm7.S || GCC ||| X64/WriteMm6.S || GCC ||| X64/WriteMm5.S || GCC ||| X64/WriteMm4.S || GCC ||| X64/WriteMm3.S || GCC ||| X64/WriteMm2.S || GCC ||| X64/WriteMm1.S || GCC ||| X64/WriteMm0.S || GCC ||| X64/WriteLdtr.S || GCC ||| X64/WriteIdtr.S || GCC ||| X64/WriteGdtr.S || GCC ||| X64/WriteDr7.S || GCC ||| X64/WriteDr6.S || GCC ||| X64/WriteDr5.S || GCC ||| X64/WriteDr4.S || GCC ||| X64/WriteDr3.S || GCC ||| X64/WriteDr2.S || GCC ||| X64/WriteDr1.S || GCC ||| X64/WriteDr0.S || GCC ||| X64/WriteCr4.S || GCC ||| X64/WriteCr3.S || GCC ||| X64/WriteCr2.S || GCC ||| X64/WriteCr0.S || GCC ||| X64/Wbinvd.S || GCC ||| X64/Thunk16.S || GCC ||| X64/SwitchStack.S || GCC ||| X64/SetJump.S || GCC ||| X64/ReadTsc.S || GCC ||| X64/ReadTr.S || GCC ||| X64/ReadSs.S || GCC ||| X64/ReadPmc.S || GCC ||| X64/ReadMsr64.S || GCC ||| X64/ReadMm7.S || GCC ||| X64/ReadMm6.S || GCC ||| X64/ReadMm5.S || GCC ||| X64/ReadMm4.S || GCC ||| X64/ReadMm3.S || GCC ||| X64/ReadMm2.S || GCC ||| X64/ReadMm1.S || GCC ||| X64/ReadMm0.S || GCC ||| X64/ReadLdtr.S || GCC ||| X64/ReadIdtr.S || GCC ||| X64/ReadGs.S || GCC ||| X64/ReadGdtr.S || GCC ||| X64/ReadFs.S || GCC ||| X64/ReadEs.S || GCC ||| X64/ReadEflags.S || GCC ||| X64/ReadDs.S || GCC ||| X64/ReadDr7.S || GCC ||| X64/ReadDr6.S || GCC ||| X64/ReadDr5.S || GCC ||| X64/ReadDr4.S || GCC ||| X64/ReadDr3.S || GCC ||| X64/ReadDr2.S || GCC ||| X64/ReadDr1.S || GCC ||| X64/ReadDr0.S || GCC ||| X64/ReadCs.S || GCC ||| X64/ReadCr4.S || GCC ||| X64/ReadCr3.S || GCC ||| X64/ReadCr2.S || GCC ||| X64/ReadCr0.S || GCC ||| X64/Mwait.S || GCC ||| X64/Monitor.S || GCC ||| X64/LongJump.S || GCC ||| X64/Invd.S || GCC ||| X64/InterlockedIncrement.S || GCC ||| X64/InterlockedDecrement.S || GCC ||| X64/InterlockedCompareExchange64.S || GCC ||| X64/InterlockedCompareExchange32.S || GCC ||| X64/FxSave.S || GCC ||| X64/FxRestore.S || GCC ||| X64/FlushCacheLine.S || GCC ||| X64/EnablePaging64.S || GCC ||| X64/EnableInterrupts.S || GCC ||| X64/EnableDisableInterrupts.S || GCC ||| X64/DisablePaging64.S || GCC ||| X64/DisableInterrupts.S || GCC ||| X64/CpuSleep.S || GCC ||| X64/CpuPause.S || GCC ||| X64/CpuId.S || GCC ||| X64/CpuIdEx.S || GCC ||| X64/CpuFlushTlb.S || GCC ||| X64/CpuBreakpoint.S || GCC ||| Synchronization.c || INTEL ||| SynchronizationMsc.c || MSFT ||| SynchronizationGcc.c || GCC ||| [Sources.IPF] Ipf/AccessGp.s Ipf/ReadCpuid.s Ipf/ExecFc.s Ipf/AsmPalCall.s Ipf/AccessPsr.s Ipf/AccessPmr.s Ipf/AccessKr.s Ipf/AccessGcr.s Ipf/AccessEicr.s Ipf/AccessDbr.s Ipf/FlushCacheRange.s Ipf/InternalSwitchStack.c Ipf/GetInterruptState.s Ipf/CpuFlushTlb.s Ipf/CpuPause.s Ipf/Synchronization.c Ipf/InterlockedCompareExchange64.s Ipf/InterlockedCompareExchange32.s Ipf/CpuBreakpoint.c Ipf/Unaligned.c Ipf/SwitchStack.s Ipf/longjmp.s Ipf/setjmp.s Ipf/PalCallStatic.s Ipf/ia_64gen.h Ipf/asm.h Math64.c Synchronization.c || INTEL ||| SynchronizationMsc.c || MSFT ||| SynchronizationGcc.c || GCC ||| [Sources.EBC] Synchronization.c Ebc/Synchronization.c Ebc/CpuBreakpoint.c Ebc/SetJumpLongJump.c Ebc/SwitchStack.c Unaligned.c Math64.c ################################################################################ # # Package Dependency Section - list of Package files that are required for # this module. # ################################################################################ [Packages] MdePkg/MdePkg.dec ################################################################################ # # Library Class Section - list of Library Classes that are required for # this module. # ################################################################################ [LibraryClasses] PcdLib TimerLib DebugLib BaseMemoryLib ################################################################################ # # Pcd FIXED_AT_BUILD - list of PCDs that this module is coded for. # ################################################################################ [PcdsFixedAtBuild.common] PcdSpinLockTimeout|gEfiMdePkgTokenSpaceGuid PcdMaximumLinkedListLength|gEfiMdePkgTokenSpaceGuid PcdMaximumAsciiStringLength|gEfiMdePkgTokenSpaceGuid PcdMaximumUnicodeStringLength|gEfiMdePkgTokenSpaceGuid