## @file # Base Library implementation for X64 UnixPkg. X64 code writes CR3 so to # not change MdeModulePkg DxeIpl we need a UnixPkg copy of the BaseLib. # # Currently I'm debugging UnixPkg with SVR V ABI so there are some # temp changes for that too. # # # Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.
# Portions copyright (c) 2008 - 2009, Apple Inc. 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] 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.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.S | 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 [Packages] MdePkg/MdePkg.dec [LibraryClasses] PcdLib DebugLib BaseMemoryLib [Pcd] gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList