]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UnixPkg/Library/UnixBaseLib/UnixBaseLib.inf
Added to support X64 port (with SV5 ABI). May be able to remove after we port everyth...
[mirror_edk2.git] / UnixPkg / Library / UnixBaseLib / UnixBaseLib.inf
diff --git a/UnixPkg/Library/UnixBaseLib/UnixBaseLib.inf b/UnixPkg/Library/UnixBaseLib/UnixBaseLib.inf
new file mode 100644 (file)
index 0000000..957fd89
--- /dev/null
@@ -0,0 +1,201 @@
+## @file\r
+#  Base Library implementation for X64 UnixPkg. X64 code writes CR3 so to\r
+#  not change MdeModulePkg DxeIpl we need a UnixPkg copy of the BaseLib.\r
+#  \r
+#  Currently I'm debugging UnixPkg with SVR V ABI so there are some \r
+#   temp changes for that too.\r
+#\r
+#\r
+#  Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r
+#  Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
+#\r
+#  This program and the accompanying materials\r
+#  are licensed and made available under the terms and conditions of the BSD License\r
+#  which accompanies this distribution. The full text of the license may be found at\r
+#  http://opensource.org/licenses/bsd-license.php.\r
+#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+#\r
+#\r
+##\r
+\r
+[Defines]\r
+  INF_VERSION                    = 0x00010005\r
+  BASE_NAME                      = BaseLib\r
+  FILE_GUID                      = 27d67720-ea68-48ae-93da-a3a074c90e30\r
+  MODULE_TYPE                    = BASE\r
+  VERSION_STRING                 = 1.0\r
+  LIBRARY_CLASS                  = BaseLib \r
+\r
+#\r
+#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC ARM\r
+#\r
+\r
+[Sources]\r
+  CheckSum.c\r
+  SwitchStack.c\r
+  SwapBytes64.c\r
+  SwapBytes32.c\r
+  SwapBytes16.c\r
+  LongJump.c\r
+  SetJump.c\r
+  RShiftU64.c\r
+  RRotU64.c\r
+  RRotU32.c\r
+  MultU64x64.c\r
+  MultU64x32.c\r
+  MultS64x64.c\r
+  ModU64x32.c\r
+  LShiftU64.c\r
+  LRotU64.c\r
+  LRotU32.c\r
+  LowBitSet64.c\r
+  LowBitSet32.c\r
+  HighBitSet64.c\r
+  HighBitSet32.c\r
+  GetPowerOfTwo64.c\r
+  GetPowerOfTwo32.c\r
+  DivU64x64Remainder.c\r
+  DivU64x32Remainder.c\r
+  DivU64x32.c\r
+  DivS64x64Remainder.c\r
+  ARShiftU64.c\r
+  BitField.c\r
+  CpuDeadLoop.c\r
+  Cpu.c\r
+  LinkedList.c\r
+  String.c\r
+  BaseLibInternals.h\r
+\r
+\r
+[Sources.X64]\r
+  X64/Thunk16.asm\r
+  X64/CpuPause.asm\r
+  X64/EnableDisableInterrupts.asm\r
+  X64/DisableInterrupts.asm\r
+  X64/EnableInterrupts.asm\r
+  X64/FlushCacheLine.asm\r
+  X64/Invd.asm\r
+  X64/Wbinvd.asm\r
+  X64/DisablePaging64.asm\r
+  X64/Mwait.asm\r
+  X64/Monitor.asm\r
+  X64/ReadPmc.asm\r
+  X64/ReadTsc.asm\r
+  X64/WriteMm7.asm\r
+  X64/WriteMm6.asm\r
+  X64/WriteMm5.asm\r
+  X64/WriteMm4.asm\r
+  X64/WriteMm3.asm\r
+  X64/WriteMm2.asm\r
+  X64/WriteMm1.asm\r
+  X64/WriteMm0.asm\r
+  X64/ReadMm7.asm\r
+  X64/ReadMm6.asm\r
+  X64/ReadMm5.asm\r
+  X64/ReadMm4.asm\r
+  X64/ReadMm3.asm\r
+  X64/ReadMm2.asm\r
+  X64/ReadMm1.asm\r
+  X64/ReadMm0.asm\r
+  X64/FxRestore.asm\r
+  X64/FxSave.asm\r
+  X64/WriteLdtr.asm\r
+  X64/ReadLdtr.asm\r
+  X64/WriteIdtr.asm\r
+  X64/ReadIdtr.asm\r
+  X64/WriteGdtr.asm\r
+  X64/ReadGdtr.asm\r
+  X64/ReadTr.asm\r
+  X64/ReadSs.asm\r
+  X64/ReadGs.asm\r
+  X64/ReadFs.asm\r
+  X64/ReadEs.asm\r
+  X64/ReadDs.asm\r
+  X64/ReadCs.asm\r
+  X64/WriteDr7.asm\r
+  X64/WriteDr6.asm\r
+  X64/WriteDr5.asm\r
+  X64/WriteDr4.asm\r
+  X64/WriteDr3.asm\r
+  X64/WriteDr2.asm\r
+  X64/WriteDr1.asm\r
+  X64/WriteDr0.asm\r
+  X64/ReadDr7.asm\r
+  X64/ReadDr6.asm\r
+  X64/ReadDr5.asm\r
+  X64/ReadDr4.asm\r
+  X64/ReadDr3.asm\r
+  X64/ReadDr2.asm\r
+  X64/ReadDr1.asm\r
+  X64/ReadDr0.asm\r
+  X64/WriteCr4.asm\r
+  X64/WriteCr3.asm\r
+  X64/WriteCr2.asm\r
+  X64/WriteCr0.asm\r
+  X64/ReadCr4.asm\r
+  X64/ReadCr3.asm\r
+  X64/ReadCr2.asm\r
+  X64/ReadCr0.asm\r
+  X64/ReadEflags.asm\r
+  X64/CpuIdEx.asm\r
+  X64/CpuId.asm\r
+  X64/LongJump.asm\r
+  X64/SetJump.asm\r
+  X64/SwitchStack.asm\r
+  X64/EnableCache.asm\r
+  X64/DisableCache.asm\r
+\r
+  X64/CpuBreakpoint.c | MSFT \r
+  X64/WriteMsr64.c | MSFT \r
+  X64/ReadMsr64.c | MSFT \r
+\r
+  X64/CpuBreakpoint.asm | INTEL \r
+  X64/WriteMsr64.asm | INTEL \r
+  X64/ReadMsr64.asm | INTEL \r
+\r
+  X64/Non-existing.c\r
+  Math64.c\r
+  Unaligned.c\r
+  X86WriteIdtr.c\r
+  X86WriteGdtr.c\r
+  X86Thunk.c\r
+  X86ReadIdtr.c\r
+  X86ReadGdtr.c\r
+  X86Msr.c\r
+  X86MemoryFence.c | MSFT\r
+  X86MemoryFence.c | INTEL\r
+  X86GetInterruptState.c\r
+  X86FxSave.c\r
+  X86FxRestore.c\r
+  X86EnablePaging64.c\r
+  X86EnablePaging32.c\r
+  X86DisablePaging64.c\r
+  X86DisablePaging32.c\r
+  X64/GccInline.c | GCC\r
+  X64/Thunk16.S | GCC \r
+  X64/SwitchStack.S | GCC \r
+  X64/SetJump.S | GCC \r
+  X64/LongJump.S | GCC \r
+  X64/EnableDisableInterrupts.S | GCC \r
+  X64/DisablePaging64.S | GCC \r
+  X64/CpuId.S | GCC \r
+  X64/CpuIdEx.S | GCC \r
+  X64/EnableCache.S | GCC\r
+  X64/DisableCache.S | GCC\r
+  ChkStkGcc.c  | GCC \r
+\r
+\r
+[Packages]\r
+  MdePkg/MdePkg.dec\r
+\r
+[LibraryClasses]\r
+  PcdLib\r
+  DebugLib\r
+  BaseMemoryLib\r
+\r
+[Pcd]\r
+  gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength\r
+  gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength\r
+  gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength\r
+  gEfiMdePkgTokenSpaceGuid.PcdVerifyNodeInList\r