#/** @file
#  Base Library implementation.
#
#  Copyright (c) 2007 - 2009, Intel Corporation.<BR>
#  Portions Copyright (c) 2008-2009 Apple Inc.<BR>
#
#  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]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = BaseLib
  FILE_GUID                      = 27d67720-ea68-48ae-93da-a3a074c90e30
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = BaseLib 

#
#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC ARM
#

[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/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/Thunk16.S | GCC 
  Ia32/CpuBreakpoint.S | GCC 
  Ia32/CpuPause.S | GCC 
  Ia32/EnableDisableInterrupts.S | GCC 
  Ia32/DisableInterrupts.S | GCC 
  Ia32/EnableInterrupts.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/EnableCache.S | GCC
  Ia32/DisableCache.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

[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
  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/FxSave.S | GCC 
  X64/FxRestore.S | GCC 
  X64/FlushCacheLine.S | GCC 
  X64/EnableInterrupts.S | GCC 
  X64/EnableDisableInterrupts.S | GCC 
  X64/DisablePaging64.S | GCC 
  X64/DisableInterrupts.S | GCC 
  X64/CpuPause.S | GCC 
  X64/CpuId.S | GCC 
  X64/CpuIdEx.S | GCC 
  X64/CpuBreakpoint.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/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 
    
  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
 
  Arm/GccInline.c               | GCC
  Arm/EnableInterrupts.S        | GCC
  Arm/DisableInterrupts.S       | GCC
  Arm/SetJumpLongJump.S         | GCC
  Arm/CpuBreakpoint.S           | GCC

[Packages]
  MdePkg/MdePkg.dec

[LibraryClasses]
  PcdLib
  DebugLib
  BaseMemoryLib

[Pcd]
  gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength
  gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength
  gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength
  gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList