blob: fc0cb9638baaf23496b4589b0c08207299a54358 [file] [log] [blame]
## @file
# Base Library implementation.
#
# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
# Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
# Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>
#
# 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]
INF_VERSION = 0x00010005
BASE_NAME = BaseLib
MODULE_UNI_FILE = BaseLib.uni
FILE_GUID = 27d67720-ea68-48ae-93da-a3a074c90e30
MODULE_TYPE = BASE
VERSION_STRING = 1.0
LIBRARY_CLASS = BaseLib
#
# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64
#
[Sources]
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
SafeString.c
String.c
FilePaths.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/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/FxRestore.c | MSFT
Ia32/FxSave.c | MSFT
Ia32/FlushCacheLine.c | MSFT
Ia32/EnablePaging32.c | MSFT
Ia32/EnableInterrupts.c | MSFT
Ia32/EnableDisableInterrupts.c | MSFT
Ia32/DivU64x64Remainder.asm | 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/CpuBreakpoint.c | MSFT
Ia32/ARShiftU64.c | MSFT
Ia32/Thunk16.asm | MSFT
Ia32/EnablePaging64.asm | MSFT
Ia32/EnableCache.c | MSFT
Ia32/DisableCache.c | MSFT
Ia32/Wbinvd.asm | INTEL
Ia32/WriteMm7.asm | INTEL
Ia32/WriteMm6.asm | INTEL
Ia32/WriteMm5.asm | INTEL
Ia32/WriteMm4.asm | INTEL
Ia32/WriteMm3.asm | INTEL
Ia32/WriteMm2.asm | INTEL
Ia32/WriteMm1.asm | INTEL
Ia32/WriteMm0.asm | INTEL
Ia32/WriteLdtr.asm | INTEL
Ia32/WriteIdtr.asm | INTEL
Ia32/WriteGdtr.asm | INTEL
Ia32/WriteDr7.asm | INTEL
Ia32/WriteDr6.asm | INTEL
Ia32/WriteDr5.asm | INTEL
Ia32/WriteDr4.asm | INTEL
Ia32/WriteDr3.asm | INTEL
Ia32/WriteDr2.asm | INTEL
Ia32/WriteDr1.asm | INTEL
Ia32/WriteDr0.asm | INTEL
Ia32/WriteCr4.asm | INTEL
Ia32/WriteCr3.asm | INTEL
Ia32/WriteCr2.asm | INTEL
Ia32/WriteCr0.asm | INTEL
Ia32/WriteMsr64.asm | INTEL
Ia32/SwapBytes64.asm | INTEL
Ia32/SetJump.asm | INTEL
Ia32/RRotU64.asm | INTEL
Ia32/RShiftU64.asm | INTEL
Ia32/ReadPmc.asm | INTEL
Ia32/ReadTsc.asm | INTEL
Ia32/ReadLdtr.asm | INTEL
Ia32/ReadIdtr.asm | INTEL
Ia32/ReadGdtr.asm | INTEL
Ia32/ReadTr.asm | INTEL
Ia32/ReadSs.asm | INTEL
Ia32/ReadGs.asm | INTEL
Ia32/ReadFs.asm | INTEL
Ia32/ReadEs.asm | INTEL
Ia32/ReadDs.asm | INTEL
Ia32/ReadCs.asm | INTEL
Ia32/ReadMsr64.asm | INTEL
Ia32/ReadMm7.asm | INTEL
Ia32/ReadMm6.asm | INTEL
Ia32/ReadMm5.asm | INTEL
Ia32/ReadMm4.asm | INTEL
Ia32/ReadMm3.asm | INTEL
Ia32/ReadMm2.asm | INTEL
Ia32/ReadMm1.asm | INTEL
Ia32/ReadMm0.asm | INTEL
Ia32/ReadEflags.asm | INTEL
Ia32/ReadDr7.asm | INTEL
Ia32/ReadDr6.asm | INTEL
Ia32/ReadDr5.asm | INTEL
Ia32/ReadDr4.asm | INTEL
Ia32/ReadDr3.asm | INTEL
Ia32/ReadDr2.asm | INTEL
Ia32/ReadDr1.asm | INTEL
Ia32/ReadDr0.asm | INTEL
Ia32/ReadCr4.asm | INTEL
Ia32/ReadCr3.asm | INTEL
Ia32/ReadCr2.asm | INTEL
Ia32/ReadCr0.asm | INTEL
Ia32/Mwait.asm | INTEL
Ia32/Monitor.asm | INTEL
Ia32/ModU64x32.asm | INTEL
Ia32/MultU64x64.asm | INTEL
Ia32/MultU64x32.asm | INTEL
Ia32/LShiftU64.asm | INTEL
Ia32/LRotU64.asm | INTEL
Ia32/LongJump.asm | INTEL
Ia32/Invd.asm | INTEL
Ia32/FxRestore.asm | INTEL
Ia32/FxSave.asm | INTEL
Ia32/FlushCacheLine.asm | INTEL
Ia32/EnablePaging32.asm | INTEL
Ia32/EnableInterrupts.asm | INTEL
Ia32/EnableDisableInterrupts.asm | INTEL
Ia32/DivU64x64Remainder.asm | INTEL
Ia32/DivU64x32Remainder.asm | INTEL
Ia32/DivU64x32.asm | INTEL
Ia32/DisablePaging32.asm | INTEL
Ia32/DisableInterrupts.asm | INTEL
Ia32/CpuPause.asm | INTEL
Ia32/CpuIdEx.asm | INTEL
Ia32/CpuId.asm | INTEL
Ia32/CpuBreakpoint.asm | INTEL
Ia32/ARShiftU64.asm | INTEL
Ia32/Thunk16.asm | INTEL
Ia32/EnablePaging64.asm | INTEL
Ia32/EnableCache.asm | INTEL
Ia32/DisableCache.asm | INTEL
Ia32/GccInline.c | GCC
Ia32/Thunk16.nasm | GCC
Ia32/EnableDisableInterrupts.S | GCC
Ia32/EnablePaging64.S | GCC
Ia32/DisablePaging32.S | GCC
Ia32/EnablePaging32.S | GCC
Ia32/Mwait.S | GCC
Ia32/Monitor.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/EnableCache.S | GCC
Ia32/DisableCache.S | GCC
Ia32/DivS64x64Remainder.c
Ia32/InternalSwitchStack.c | MSFT
Ia32/InternalSwitchStack.c | INTEL
Ia32/InternalSwitchStack.S | GCC
Ia32/Non-existing.c
Unaligned.c
X86WriteIdtr.c
X86WriteGdtr.c
X86Thunk.c
X86ReadIdtr.c
X86ReadGdtr.c
X86Msr.c
X86MemoryFence.c | MSFT
X86MemoryFence.c | INTEL
X86GetInterruptState.c
X86FxSave.c
X86FxRestore.c
X86EnablePaging64.c
X86EnablePaging32.c
X86DisablePaging64.c
X86DisablePaging32.c
[Sources.X64]
X64/Thunk16.asm
X64/CpuPause.asm
X64/EnableDisableInterrupts.asm
X64/DisableInterrupts.asm
X64/EnableInterrupts.asm
X64/FlushCacheLine.asm
X64/Invd.asm
X64/Wbinvd.asm
X64/DisablePaging64.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/ReadEflags.asm
X64/CpuIdEx.asm
X64/CpuId.asm
X64/LongJump.asm
X64/SetJump.asm
X64/SwitchStack.asm
X64/EnableCache.asm
X64/DisableCache.asm
X64/CpuBreakpoint.c | MSFT
X64/WriteMsr64.c | MSFT
X64/ReadMsr64.c | MSFT
X64/CpuBreakpoint.asm | INTEL
X64/WriteMsr64.asm | INTEL
X64/ReadMsr64.asm | INTEL
X64/Non-existing.c
Math64.c
Unaligned.c
X86WriteIdtr.c
X86WriteGdtr.c
X86Thunk.c
X86ReadIdtr.c
X86ReadGdtr.c
X86Msr.c
X86MemoryFence.c | MSFT
X86MemoryFence.c | INTEL
X86GetInterruptState.c
X86FxSave.c
X86FxRestore.c
X86EnablePaging64.c
X86EnablePaging32.c
X86DisablePaging64.c
X86DisablePaging32.c
X64/GccInline.c | GCC
X64/Thunk16.nasm | GCC
X64/SwitchStack.S | GCC
X64/SetJump.S | GCC
X64/LongJump.S | GCC
X64/EnableDisableInterrupts.S | GCC
X64/DisablePaging64.S | GCC
X64/CpuId.S | GCC
X64/CpuIdEx.S | GCC
X64/EnableCache.S | GCC
X64/DisableCache.S | GCC
ChkStkGcc.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/AccessKr7.s
Ipf/AccessGcr.s
Ipf/AccessEicr.s
Ipf/AccessDbr.s
Ipf/AccessMsr.s | INTEL
Ipf/AccessMsr.s | GCC
Ipf/AccessMsrDb.s | MSFT
Ipf/InternalFlushCacheRange.s
Ipf/FlushCacheRange.c
Ipf/InternalSwitchStack.c
Ipf/GetInterruptState.s
Ipf/CpuPause.s
Ipf/CpuBreakpoint.c | INTEL
Ipf/CpuBreakpointMsc.c | MSFT
Ipf/AsmCpuMisc.s | GCC
Ipf/Unaligned.c
Ipf/SwitchStack.s
Ipf/LongJmp.s
Ipf/SetJmp.s
Ipf/ReadCr.s
Ipf/ReadAr.s
Ipf/Ia64gen.h
Ipf/Asm.h
Math64.c
[Sources.EBC]
Ebc/CpuBreakpoint.c
Ebc/SetJumpLongJump.c
Ebc/SwitchStack.c
Unaligned.c
Math64.c
[Sources.ARM]
Arm/InternalSwitchStack.c
Arm/Unaligned.c
Math64.c | RVCT
Arm/SwitchStack.asm | RVCT
Arm/SetJumpLongJump.asm | RVCT
Arm/DisableInterrupts.asm | RVCT
Arm/EnableInterrupts.asm | RVCT
Arm/GetInterruptsState.asm | RVCT
Arm/CpuPause.asm | RVCT
Arm/CpuBreakpoint.asm | RVCT
Arm/MemoryFence.asm | RVCT
Arm/Math64.S | GCC
Arm/SwitchStack.S | GCC
Arm/EnableInterrupts.S | GCC
Arm/DisableInterrupts.S | GCC
Arm/GetInterruptsState.S | GCC
Arm/SetJumpLongJump.S | GCC
Arm/CpuBreakpoint.S | GCC
Arm/MemoryFence.S | GCC
[Sources.AARCH64]
Arm/InternalSwitchStack.c
Arm/Unaligned.c
Math64.c
AArch64/MemoryFence.S | GCC
AArch64/SwitchStack.S | GCC
AArch64/EnableInterrupts.S | GCC
AArch64/DisableInterrupts.S | GCC
AArch64/GetInterruptsState.S | GCC
AArch64/SetJumpLongJump.S | GCC
AArch64/CpuBreakpoint.S | GCC
[Packages]
MdePkg/MdePkg.dec
[LibraryClasses]
PcdLib
DebugLib
BaseMemoryLib
[Pcd]
gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength ## SOMETIMES_CONSUMES
gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength ## SOMETIMES_CONSUMES
gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength ## SOMETIMES_CONSUMES
gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask ## SOMETIMES_CONSUMES
[FeaturePcd]
gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList ## CONSUMES