Files
system76-edk2/MdePkg/Library/BaseLib/BaseLib.msa
bxing 18c319ae39 1. Updated CpuFlushTlb() according to IA-64 programmer's guide
2. Updated Thunk code to preserve EFLAGS/RFLAGS across real mode code invocation
3. Updated comments in x86Thunk.c

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@248 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-24 05:33:03 +00:00

314 lines
14 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2006, 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.
-->
<LibraryModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
<MsaLibHeader>
<BaseName>BaseLib</BaseName>
<ModuleType>BASE</ModuleType>
<ComponentType>LIBRARY</ComponentType>
<Guid>27d67720-ea68-48ae-93da-a3a074c90e30</Guid>
<Version>0</Version>
<Abstract>Memory-only library functions with no library constructordestructor</Abstract>
<Description>FIX ME!</Description>
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
<License>
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.
</License>
<Specification>0</Specification>
<Created>2006-03-09 23:16</Created>
<Updated>2006-03-22 18:15</Updated>
</MsaLibHeader>
<LibraryClassDefinitions>
<LibraryClass Usage="ALWAYS_PRODUCED">BaseLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">BaseMemoryLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">DebugLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">TimerLib</LibraryClass>
</LibraryClassDefinitions>
<SourceFiles>
<Filename>String.c</Filename>
<Filename>LinkedList.c</Filename>
<Filename>Synchronization.c</Filename>
<Filename>Cpu.c</Filename>
<Filename>CpuDeadLoop.c</Filename>
<Filename>BitField.c</Filename>
<Filename>ARShiftU64.c</Filename>
<Filename>DivS64x64Remainder.c</Filename>
<Filename>DivU64x32.c</Filename>
<Filename>DivU64x32Remainder.c</Filename>
<Filename>DivU64x64Remainder.c</Filename>
<Filename>GetPowerOfTwo32.c</Filename>
<Filename>GetPowerOfTwo64.c</Filename>
<Filename>HighBitSet32.c</Filename>
<Filename>HighBitSet64.c</Filename>
<Filename>LowBitSet32.c</Filename>
<Filename>LowBitSet64.c</Filename>
<Filename>LRotU32.c</Filename>
<Filename>LRotU64.c</Filename>
<Filename>LShiftU64.c</Filename>
<Filename>ModU64x32.c</Filename>
<Filename>MultS64x64.c</Filename>
<Filename>MultU64x32.c</Filename>
<Filename>MultU64x64.c</Filename>
<Filename>RRotU32.c</Filename>
<Filename>RRotU64.c</Filename>
<Filename>RShiftU64.c</Filename>
<Filename>SwapBytes16.c</Filename>
<Filename>SwapBytes32.c</Filename>
<Filename>SwapBytes64.c</Filename>
<Arch ArchType="IA32">
<Filename>x86LowLevel.c</Filename>
<Filename>x86Thunk.c</Filename>
<Filename>Unaligned.c</Filename>
<Filename>Ia32/Non-existing.c</Filename>
<Filename>Ia32/LShiftU64.asm</Filename>
<Filename>Ia32/RShiftU64.asm</Filename>
<Filename>Ia32/ARShiftU64.asm</Filename>
<Filename>Ia32/LRotU64.asm</Filename>
<Filename>Ia32/RRotU64.asm</Filename>
<Filename>Ia32/MultU64x32.asm</Filename>
<Filename>Ia32/MultU64x64.asm</Filename>
<Filename>Ia32/DivU64x32.asm</Filename>
<Filename>Ia32/ModU64x32.asm</Filename>
<Filename>Ia32/DivU64x32Remainder.asm</Filename>
<Filename>Ia32/DivU64x64Remainder.asm</Filename>
<Filename>Ia32/DivS64x64Remainder.c</Filename>
<Filename>Ia32/SwapBytes64.asm</Filename>
<Filename>Ia32/SetJump.asm</Filename>
<Filename>Ia32/LongJump.asm</Filename>
<Filename>Ia32/SwitchStack.c</Filename>
<Filename>Ia32/CpuId.asm</Filename>
<Filename>Ia32/ReadEflags.asm</Filename>
<Filename>Ia32/ReadMsr64.asm</Filename>
<Filename>Ia32/WriteMsr32.asm</Filename>
<Filename>Ia32/WriteMsr64.asm</Filename>
<Filename>Ia32/ReadCr0.asm</Filename>
<Filename>Ia32/ReadCr2.asm</Filename>
<Filename>Ia32/ReadCr3.asm</Filename>
<Filename>Ia32/ReadCr4.asm</Filename>
<Filename>Ia32/WriteCr0.asm</Filename>
<Filename>Ia32/WriteCr2.asm</Filename>
<Filename>Ia32/WriteCr3.asm</Filename>
<Filename>Ia32/WriteCr4.asm</Filename>
<Filename>Ia32/ReadDr0.asm</Filename>
<Filename>Ia32/ReadDr1.asm</Filename>
<Filename>Ia32/ReadDr2.asm</Filename>
<Filename>Ia32/ReadDr3.asm</Filename>
<Filename>Ia32/ReadDr4.asm</Filename>
<Filename>Ia32/ReadDr5.asm</Filename>
<Filename>Ia32/ReadDr6.asm</Filename>
<Filename>Ia32/ReadDr7.asm</Filename>
<Filename>Ia32/WriteDr0.asm</Filename>
<Filename>Ia32/WriteDr1.asm</Filename>
<Filename>Ia32/WriteDr2.asm</Filename>
<Filename>Ia32/WriteDr3.asm</Filename>
<Filename>Ia32/WriteDr4.asm</Filename>
<Filename>Ia32/WriteDr5.asm</Filename>
<Filename>Ia32/WriteDr6.asm</Filename>
<Filename>Ia32/WriteDr7.asm</Filename>
<Filename>Ia32/ReadCs.asm</Filename>
<Filename>Ia32/ReadDs.asm</Filename>
<Filename>Ia32/ReadEs.asm</Filename>
<Filename>Ia32/ReadFs.asm</Filename>
<Filename>Ia32/ReadGs.asm</Filename>
<Filename>Ia32/ReadSs.asm</Filename>
<Filename>Ia32/ReadTr.asm</Filename>
<Filename>Ia32/ReadGdtr.asm</Filename>
<Filename>Ia32/WriteGdtr.asm</Filename>
<Filename>Ia32/ReadIdtr.asm</Filename>
<Filename>Ia32/WriteIdtr.asm</Filename>
<Filename>Ia32/ReadLdtr.asm</Filename>
<Filename>Ia32/WriteLdtr.asm</Filename>
<Filename>Ia32/FxSave.asm</Filename>
<Filename>Ia32/FxRestore.asm</Filename>
<Filename>Ia32/ReadMm0.asm</Filename>
<Filename>Ia32/ReadMm1.asm</Filename>
<Filename>Ia32/ReadMm2.asm</Filename>
<Filename>Ia32/ReadMm3.asm</Filename>
<Filename>Ia32/ReadMm4.asm</Filename>
<Filename>Ia32/ReadMm5.asm</Filename>
<Filename>Ia32/ReadMm6.asm</Filename>
<Filename>Ia32/ReadMm7.asm</Filename>
<Filename>Ia32/WriteMm0.asm</Filename>
<Filename>Ia32/WriteMm1.asm</Filename>
<Filename>Ia32/WriteMm2.asm</Filename>
<Filename>Ia32/WriteMm3.asm</Filename>
<Filename>Ia32/WriteMm4.asm</Filename>
<Filename>Ia32/WriteMm5.asm</Filename>
<Filename>Ia32/WriteMm6.asm</Filename>
<Filename>Ia32/WriteMm7.asm</Filename>
<Filename>Ia32/ReadTsc.asm</Filename>
<Filename>Ia32/ReadPmc.asm</Filename>
<Filename>Ia32/Monitor.asm</Filename>
<Filename>Ia32/Mwait.asm</Filename>
<Filename>Ia32/EnablePaging32.asm</Filename>
<Filename>Ia32/DisablePaging32.asm</Filename>
<Filename>Ia32/EnablePaging64.asm</Filename>
<Filename>Ia32/Wbinvd.asm</Filename>
<Filename>Ia32/Invd.asm</Filename>
<Filename>Ia32/FlushCacheLine.asm</Filename>
<Filename>Ia32/InterlockedIncrement.asm</Filename>
<Filename>Ia32/InterlockedDecrement.asm</Filename>
<Filename>Ia32/InterlockedCompareExchange32.asm</Filename>
<Filename>Ia32/InterlockedCompareExchange64.asm</Filename>
<Filename>Ia32/EnableInterrupts.asm</Filename>
<Filename>Ia32/DisableInterrupts.asm</Filename>
<Filename>Ia32/EnableDisableInterrupts.asm</Filename>
<Filename>Ia32/CpuSleep.asm</Filename>
<Filename>Ia32/CpuPause.asm</Filename>
<Filename>Ia32/CpuBreakpoint.asm</Filename>
<Filename>Ia32/CpuFlushTlb.asm</Filename>
<Filename>Ia32/Thunk16.asm</Filename>
</Arch>
<Arch ArchType="X64">
<Filename>x86LowLevel.c</Filename>
<Filename>x86Thunk.c</Filename>
<Filename>Unaligned.c</Filename>
<Filename>Math64.c</Filename>
<Filename>x64/Non-existing.c</Filename>
<Filename>x64/SwitchStack.asm</Filename>
<Filename>x64/SetJump.asm</Filename>
<Filename>x64/LongJump.asm</Filename>
<Filename>x64/CpuId.asm</Filename>
<Filename>x64/ReadEflags.asm</Filename>
<Filename>x64/ReadMsr32.asm</Filename>
<Filename>x64/ReadMsr64.asm</Filename>
<Filename>x64/WriteMsr32.asm</Filename>
<Filename>x64/WriteMsr64.asm</Filename>
<Filename>x64/ReadCr0.asm</Filename>
<Filename>x64/ReadCr2.asm</Filename>
<Filename>x64/ReadCr3.asm</Filename>
<Filename>x64/ReadCr4.asm</Filename>
<Filename>x64/WriteCr0.asm</Filename>
<Filename>x64/WriteCr2.asm</Filename>
<Filename>x64/WriteCr3.asm</Filename>
<Filename>x64/WriteCr4.asm</Filename>
<Filename>x64/ReadDr0.asm</Filename>
<Filename>x64/ReadDr1.asm</Filename>
<Filename>x64/ReadDr2.asm</Filename>
<Filename>x64/ReadDr3.asm</Filename>
<Filename>x64/ReadDr4.asm</Filename>
<Filename>x64/ReadDr5.asm</Filename>
<Filename>x64/ReadDr6.asm</Filename>
<Filename>x64/ReadDr7.asm</Filename>
<Filename>x64/WriteDr0.asm</Filename>
<Filename>x64/WriteDr1.asm</Filename>
<Filename>x64/WriteDr2.asm</Filename>
<Filename>x64/WriteDr3.asm</Filename>
<Filename>x64/WriteDr4.asm</Filename>
<Filename>x64/WriteDr5.asm</Filename>
<Filename>x64/WriteDr6.asm</Filename>
<Filename>x64/WriteDr7.asm</Filename>
<Filename>x64/ReadCs.asm</Filename>
<Filename>x64/ReadDs.asm</Filename>
<Filename>x64/ReadEs.asm</Filename>
<Filename>x64/ReadFs.asm</Filename>
<Filename>x64/ReadGs.asm</Filename>
<Filename>x64/ReadSs.asm</Filename>
<Filename>x64/ReadTr.asm</Filename>
<Filename>x64/ReadGdtr.asm</Filename>
<Filename>x64/WriteGdtr.asm</Filename>
<Filename>x64/ReadIdtr.asm</Filename>
<Filename>x64/WriteIdtr.asm</Filename>
<Filename>x64/ReadLdtr.asm</Filename>
<Filename>x64/WriteLdtr.asm</Filename>
<Filename>x64/FxSave.asm</Filename>
<Filename>x64/FxRestore.asm</Filename>
<Filename>x64/ReadMm0.asm</Filename>
<Filename>x64/ReadMm1.asm</Filename>
<Filename>x64/ReadMm2.asm</Filename>
<Filename>x64/ReadMm3.asm</Filename>
<Filename>x64/ReadMm4.asm</Filename>
<Filename>x64/ReadMm5.asm</Filename>
<Filename>x64/ReadMm6.asm</Filename>
<Filename>x64/ReadMm7.asm</Filename>
<Filename>x64/WriteMm0.asm</Filename>
<Filename>x64/WriteMm1.asm</Filename>
<Filename>x64/WriteMm2.asm</Filename>
<Filename>x64/WriteMm3.asm</Filename>
<Filename>x64/WriteMm4.asm</Filename>
<Filename>x64/WriteMm5.asm</Filename>
<Filename>x64/WriteMm6.asm</Filename>
<Filename>x64/WriteMm7.asm</Filename>
<Filename>x64/ReadTsc.asm</Filename>
<Filename>x64/ReadPmc.asm</Filename>
<Filename>x64/Monitor.asm</Filename>
<Filename>x64/Mwait.asm</Filename>
<Filename>x64/DisablePaging64.asm</Filename>
<Filename>x64/Wbinvd.asm</Filename>
<Filename>x64/Invd.asm</Filename>
<Filename>x64/FlushCacheLine.asm</Filename>
<Filename>x64/InterlockedIncrement.asm</Filename>
<Filename>x64/InterlockedDecrement.asm</Filename>
<Filename>x64/InterlockedCompareExchange32.asm</Filename>
<Filename>x64/InterlockedCompareExchange64.asm</Filename>
<Filename>x64/EnableInterrupts.asm</Filename>
<Filename>x64/DisableInterrupts.asm</Filename>
<Filename>x64/EnableDisableInterrupts.asm</Filename>
<Filename>x64/CpuSleep.asm</Filename>
<Filename>x64/CpuPause.asm</Filename>
<Filename>x64/CpuBreakpoint.asm</Filename>
<Filename>x64/CpuFlushTlb.asm</Filename>
<Filename>x64/Thunk16.asm</Filename>
</Arch>
<Arch ArchType="IPF">
<Filename>Math64.c</Filename>
<Filename>Ipf/PalCallStatic.s</Filename>
<Filename>Ipf/setjmp.s</Filename>
<Filename>Ipf/SwitchStack.s</Filename>
<Filename>Ipf/Unaligned.c</Filename>
<Filename>Ipf/CpuBreakpoint.c</Filename>
<Filename>Ipf/InterlockedCompareExchange32.s</Filename>
<Filename>Ipf/InterlockedCompareExchange64.s</Filename>
<Filename>Ipf/Synchronization.c</Filename>
<Filename>Ipf/CpuPause.s</Filename>
<Filename>Ipf/CpuFlushTlb.s</Filename>
</Arch>
<Arch ArchType="EBC">
<Filename>Math64.c</Filename>
<Filename>SwitchStack.c</Filename>
<Filename>SetJumpLongJump.c</Filename>
<Filename>Unaligned.c</Filename>
<Filename>Ebc/CpuBreakpoint.c</Filename>
<Filename>Ebc/Synchronization.c</Filename>
</Arch>
</SourceFiles>
<Includes>
<PackageName>MdePkg</PackageName>
</Includes>
<PCDs>
<PcdData ItemType="FIXED_AT_BUILD">
<C_Name>PcdMaximumUnicodeStringLength</C_Name>
<Token>0x00000001</Token>
<DatumType>UINT32</DatumType>
</PcdData>
<PcdData ItemType="FIXED_AT_BUILD">
<C_Name>PcdMaximumAsciiStringLength</C_Name>
<Token>0x00000002</Token>
<DatumType>UINT32</DatumType>
</PcdData>
<PcdData ItemType="FIXED_AT_BUILD">
<C_Name>PcdMaximumLinkedListLength</C_Name>
<Token>0x00000003</Token>
<DatumType>UINT32</DatumType>
</PcdData>
<PcdData ItemType="FIXED_AT_BUILD">
<C_Name>PcdSpinLockTimeout</C_Name>
<Token>0x00000004</Token>
<DatumType>UINT32</DatumType>
</PcdData>
</PCDs>
</LibraryModuleSurfaceArea>