]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseLib/BaseLib.msa
Add gnu x86 assembly sources.
[mirror_edk2.git] / MdePkg / Library / BaseLib / BaseLib.msa
index 41b085e147043335ac197bef0d2a34457322a38e..028d105a70099139b004293b71bc6aedbf7bd075 100644 (file)
@@ -1,13 +1,23 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
+<?xml version="1.0" encoding="UTF-8"?>\r
+<!--\r
+Copyright (c) 2006, Intel Corporation\r
+All rights reserved. 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
+\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
 <ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0">\r
   <MsaHeader>\r
     <ModuleName>BaseLib</ModuleName>\r
     <ModuleType>BASE</ModuleType>\r
     <GuidValue>27d67720-ea68-48ae-93da-a3a074c90e30</GuidValue>\r
     <Version>1.0</Version>\r
-    <Abstract>Memory-only library functions with no library constructordestructor</Abstract>\r
-    <Description>FIX ME!</Description>\r
-    <Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>\r
+    <Abstract>Component description file for Base Library</Abstract>\r
+    <Description>Base Library implementation.</Description>\r
+    <Copyright>Copyright (c) 2006, Intel Corporation.</Copyright>\r
     <License>All rights reserved. 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
@@ -39,6 +49,7 @@
     </LibraryClass>\r
   </LibraryClassDefinitions>\r
   <SourceFiles>\r
+    <Filename>BaseLibInternals.h</Filename>\r
     <Filename>String.c</Filename>\r
     <Filename>LinkedList.c</Filename>\r
     <Filename>Synchronization.c</Filename>\r
     <Filename>SwapBytes32.c</Filename>\r
     <Filename>SwapBytes64.c</Filename>\r
     <Filename>SwitchStack.c</Filename>\r
-    <Filename SupArchList="IA32">x86LowLevel.c</Filename>\r
+    \r
+    <Filename SupArchList="IA32">x86DisablePaging32.c</Filename>\r
+    <Filename SupArchList="IA32">x86DisablePaging64.c</Filename>\r
+    <Filename SupArchList="IA32">x86EnablePaging32.c</Filename>\r
+    <Filename SupArchList="IA32">x86EnablePaging64.c</Filename>\r
+    <Filename SupArchList="IA32">x86FxRestore.c</Filename>\r
+    <Filename SupArchList="IA32">x86FxSave.c</Filename>\r
+    <Filename SupArchList="IA32">x86GetInterruptState.c</Filename>\r
+    <Filename SupArchList="IA32">x86MemoryFence.c</Filename>\r
+    <Filename SupArchList="IA32">x86Msr.c</Filename>\r
+    <Filename SupArchList="IA32">x86ReadGdtr.c</Filename>\r
+    <Filename SupArchList="IA32">x86ReadIdtr.c</Filename>\r
     <Filename SupArchList="IA32">x86Thunk.c</Filename>\r
+    <Filename SupArchList="IA32">x86WriteGdtr.c</Filename>\r
+    <Filename SupArchList="IA32">x86WriteIdtr.c</Filename>\r
     <Filename SupArchList="IA32">Unaligned.c</Filename>\r
     <Filename SupArchList="IA32">Ia32/Non-existing.c</Filename>\r
     <Filename SupArchList="IA32">Ia32/InternalSwitchStack.c</Filename>\r
-    <Filename SupArchList="IA32">Ia32/LShiftU64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/RShiftU64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ARShiftU64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/LRotU64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/RRotU64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/MultU64x32.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/MultU64x64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DivU64x32.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ModU64x32.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DivU64x32Remainder.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DivU64x64Remainder.asm</Filename>\r
     <Filename SupArchList="IA32">Ia32/DivS64x64Remainder.c</Filename>\r
-    <Filename SupArchList="IA32">Ia32/SwapBytes64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/SetJump.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/LongJump.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuId.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuIdEx.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadEflags.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMsr64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMsr32.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMsr64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr0.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr2.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr3.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr4.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr0.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr2.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr3.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr4.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr0.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr1.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr2.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr3.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr4.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr5.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr6.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr7.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr0.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr1.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr2.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr3.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr4.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr5.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr6.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr7.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCs.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDs.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadEs.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadFs.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadGs.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadSs.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadTr.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadGdtr.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteGdtr.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadIdtr.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteIdtr.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadLdtr.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteLdtr.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/FxSave.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/FxRestore.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm0.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm1.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm2.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm3.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm4.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm5.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm6.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm7.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm0.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm1.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm2.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm3.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm4.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm5.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm6.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm7.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadTsc.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadPmc.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Monitor.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Mwait.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnablePaging32.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DisablePaging32.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnablePaging64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Wbinvd.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Invd.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/FlushCacheLine.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedIncrement.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedDecrement.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedCompareExchange32.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedCompareExchange64.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnableInterrupts.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DisableInterrupts.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnableDisableInterrupts.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuSleep.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuPause.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuBreakpoint.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuFlushTlb.asm</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Thunk16.asm</Filename>\r
+\r
     <!-- GCC assembly code is with .S extension -->\r
-    <Filename SupArchList="IA32">Ia32/LShiftU64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/RShiftU64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ARShiftU64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/LRotU64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/RRotU64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/MultU64x32.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/MultU64x64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DivU64x32.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ModU64x32.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DivU64x32Remainder.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DivU64x64Remainder.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/SwapBytes64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/SetJump.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/LongJump.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuId.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuIdEx.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadEflags.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMsr64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMsr32.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMsr64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr0.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr2.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr3.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCr4.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr0.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr2.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr3.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteCr4.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr0.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr1.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr2.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr3.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr4.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr5.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr6.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDr7.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr0.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr1.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr2.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr3.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr4.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr5.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr6.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteDr7.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadCs.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadDs.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadEs.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadFs.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadGs.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadSs.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadTr.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadGdtr.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteGdtr.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadIdtr.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteIdtr.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadLdtr.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteLdtr.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/FxSave.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/FxRestore.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm0.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm1.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm2.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm3.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm4.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm5.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm6.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadMm7.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm0.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm1.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm2.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm3.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm4.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm5.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm6.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/WriteMm7.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadTsc.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ReadPmc.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Monitor.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Mwait.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnablePaging32.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DisablePaging32.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnablePaging64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Wbinvd.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Invd.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/FlushCacheLine.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedIncrement.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedDecrement.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedCompareExchange32.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/InterlockedCompareExchange64.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnableInterrupts.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/DisableInterrupts.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/EnableDisableInterrupts.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuSleep.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuPause.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuBreakpoint.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/CpuFlushTlb.S</Filename>\r
-    <Filename SupArchList="IA32">Ia32/Thunk16.S</Filename>\r
-    <Filename SupArchList="X64">X86LowLevel.c</Filename>\r
-    <Filename SupArchList="X64">X86Thunk.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/LShiftU64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/RShiftU64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ARShiftU64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/LRotU64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/RRotU64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/MultU64x32.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/MultU64x64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/DivU64x32.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ModU64x32.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/DivU64x32Remainder.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/DivU64x64Remainder.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/SwapBytes64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/SetJump.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/LongJump.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/CpuId.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/CpuIdEx.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadEflags.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMsr64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMsr64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadCr0.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadCr2.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadCr3.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadCr4.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteCr0.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteCr2.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteCr3.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteCr4.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr0.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr1.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr2.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr3.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr4.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr5.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr6.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDr7.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr0.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr1.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr2.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr3.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr4.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr5.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr6.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteDr7.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadCs.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadDs.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadEs.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadFs.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadGs.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadSs.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadTr.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadGdtr.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteGdtr.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadIdtr.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteIdtr.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadLdtr.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteLdtr.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/FxSave.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/FxRestore.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm0.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm1.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm2.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm3.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm4.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm5.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm6.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadMm7.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm0.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm1.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm2.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm3.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm4.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm5.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm6.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/WriteMm7.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadTsc.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/ReadPmc.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/Monitor.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/Mwait.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/EnablePaging32.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/DisablePaging32.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/EnablePaging64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/Wbinvd.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/Invd.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/FlushCacheLine.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/InterlockedIncrement.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/InterlockedDecrement.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/InterlockedCompareExchange32.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/InterlockedCompareExchange64.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/EnableInterrupts.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/DisableInterrupts.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/EnableDisableInterrupts.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/CpuSleep.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/CpuPause.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/CpuBreakpoint.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/CpuFlushTlb.S</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/Thunk16.S</Filename>\r
+    \r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/CpuBreakpoint.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/CpuFlushTlb.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/CpuIdEx.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/CpuId.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/CpuPause.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/CpuSleep.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/DisableInterrupts.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/DisablePaging64.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/EnableDisableInterrupts.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/EnableInterrupts.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/EnablePaging64.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/FlushCacheLine.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/FxRestore.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/FxSave.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/InterlockedCompareExchange32.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/InterlockedCompareExchange64.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/InterlockedDecrement.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/InterlockedIncrement.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/Invd.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/LongJump.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/Monitor.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/Mwait.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadCr0.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadCr2.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadCr3.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadCr4.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadCs.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr0.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr1.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr2.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr3.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr4.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr5.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr6.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDr7.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadDs.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadEflags.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadEs.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadFs.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadGdtr.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadGs.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadIdtr.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadLdtr.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm0.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm1.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm2.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm3.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm4.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm5.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm6.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMm7.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadMsr64.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadPmc.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadSs.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadTr.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/ReadTsc.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/SetJump.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/SwitchStack.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/Thunk16.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/Wbinvd.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteCr0.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteCr2.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteCr3.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteCr4.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr0.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr1.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr2.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr3.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr4.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr5.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr6.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteDr7.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteGdtr.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteIdtr.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteLdtr.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm0.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm1.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm2.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm3.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm4.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm5.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm6.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMm7.S</Filename>\r
+    <Filename SupArchList="X64" ToolChainFamily="GCC">X64/WriteMsr64.S</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ARShiftU64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/CpuBreakpoint.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/CpuFlushTlb.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/CpuSleep.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/CpuId.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/CpuIdEx.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/CpuPause.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/DisableInterrupts.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/DisablePaging32.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/DivU64x32.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/DivU64x32Remainder.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/DivU64x64Remainder.c</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/EnableDisableInterrupts.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/EnableInterrupts.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/EnablePaging32.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/EnablePaging64.asm</Filename>\r
+    \r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/FlushCacheLine.c</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/FxSave.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/FxRestore.c</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/InterlockedIncrement.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/InterlockedDecrement.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/InterlockedCompareExchange32.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/InterlockedCompareExchange64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/Invd.c</Filename>\r
+    \r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/LongJump.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/LRotU64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/LShiftU64.c</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/MultU64x32.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/MultU64x64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ModU64x32.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/Monitor.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/Mwait.c</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadCr0.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadCr2.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadCr3.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadCr4.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr0.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr1.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr2.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr3.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr4.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr5.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr6.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDr7.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadEflags.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm0.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm1.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm2.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm3.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm4.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm5.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm6.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMm7.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadMsr64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadCs.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadDs.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadEs.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadFs.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadGs.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadSs.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadTr.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadGdtr.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadIdtr.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadLdtr.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadTsc.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/ReadPmc.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/RShiftU64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/RRotU64.c</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/SetJump.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/SwapBytes64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/Thunk16.asm</Filename>\r
+\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMsr64.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteCr0.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteCr2.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteCr3.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteCr4.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr0.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr1.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr2.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr3.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr4.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr5.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr6.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteDr7.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteGdtr.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteIdtr.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteLdtr.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm0.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm1.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm2.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm3.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm4.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm5.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm6.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/WriteMm7.c</Filename>\r
+    <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/Wbinvd.c</Filename>\r
+                                \r
+    <Filename SupArchList="X64">x86DisablePaging32.c</Filename>\r
+    <Filename SupArchList="X64">x86DisablePaging64.c</Filename>\r
+    <Filename SupArchList="X64">x86EnablePaging32.c</Filename>\r
+    <Filename SupArchList="X64">x86EnablePaging64.c</Filename>\r
+    <Filename SupArchList="X64">x86FxRestore.c</Filename>\r
+    <Filename SupArchList="X64">x86FxSave.c</Filename>\r
+    <Filename SupArchList="X64">x86GetInterruptState.c</Filename>\r
+    <Filename SupArchList="X64">x86MemoryFence.c</Filename>\r
+    <Filename SupArchList="X64">x86Msr.c</Filename>\r
+    <Filename SupArchList="X64">x86ReadGdtr.c</Filename>\r
+    <Filename SupArchList="X64">x86ReadIdtr.c</Filename>\r
+    <Filename SupArchList="X64">x86Thunk.c</Filename>\r
+    <Filename SupArchList="X64">x86WriteGdtr.c</Filename>\r
+    <Filename SupArchList="X64">x86WriteIdtr.c</Filename>\r
     <Filename SupArchList="X64">Unaligned.c</Filename>\r
     <Filename SupArchList="X64">Math64.c</Filename>\r
     <Filename SupArchList="X64">X64/Non-existing.c</Filename>\r
     <Filename SupArchList="X64">X64/CpuId.asm</Filename>\r
     <Filename SupArchList="X64">X64/CpuIdEx.asm</Filename>\r
     <Filename SupArchList="X64">X64/ReadEflags.asm</Filename>\r
-    <Filename SupArchList="X64">X64/ReadMsr32.asm</Filename>\r
-    <Filename SupArchList="X64">X64/ReadMsr64.asm</Filename>\r
-    <Filename SupArchList="X64">X64/WriteMsr32.asm</Filename>\r
-    <Filename SupArchList="X64">X64/WriteMsr64.asm</Filename>\r
+    <Filename SupArchList="X64">X64/ReadMsr64.c</Filename>\r
+    <Filename SupArchList="X64">X64/WriteMsr64.c</Filename>\r
     <Filename SupArchList="X64">X64/ReadCr0.asm</Filename>\r
     <Filename SupArchList="X64">X64/ReadCr2.asm</Filename>\r
     <Filename SupArchList="X64">X64/ReadCr3.asm</Filename>\r
     <Filename SupArchList="X64">X64/ReadPmc.asm</Filename>\r
     <Filename SupArchList="X64">X64/Monitor.asm</Filename>\r
     <Filename SupArchList="X64">X64/Mwait.asm</Filename>\r
+    <Filename SupArchList="X64">X64/EnablePaging64.asm</Filename>\r
     <Filename SupArchList="X64">X64/DisablePaging64.asm</Filename>\r
     <Filename SupArchList="X64">X64/Wbinvd.asm</Filename>\r
     <Filename SupArchList="X64">X64/Invd.asm</Filename>\r
     <Filename SupArchList="X64">X64/FlushCacheLine.asm</Filename>\r
-    <Filename SupArchList="X64">X64/InterlockedIncrement.asm</Filename>\r
-    <Filename SupArchList="X64">X64/InterlockedDecrement.asm</Filename>\r
+    <Filename SupArchList="X64">X64/InterlockedIncrement.c</Filename>\r
+    <Filename SupArchList="X64">X64/InterlockedDecrement.c</Filename>\r
     <Filename SupArchList="X64">X64/InterlockedCompareExchange32.asm</Filename>\r
     <Filename SupArchList="X64">X64/InterlockedCompareExchange64.asm</Filename>\r
     <Filename SupArchList="X64">X64/EnableInterrupts.asm</Filename>\r
     <Filename SupArchList="X64">X64/EnableDisableInterrupts.asm</Filename>\r
     <Filename SupArchList="X64">X64/CpuSleep.asm</Filename>\r
     <Filename SupArchList="X64">X64/CpuPause.asm</Filename>\r
-    <Filename SupArchList="X64">X64/CpuBreakpoint.asm</Filename>\r
+    <Filename SupArchList="X64">X64/CpuBreakpoint.c</Filename>\r
     <Filename SupArchList="X64">X64/CpuFlushTlb.asm</Filename>\r
     <Filename SupArchList="X64">X64/Thunk16.asm</Filename>\r
+    \r
     <Filename SupArchList="IPF">Math64.c</Filename>\r
+    <Filename SupArchList="IPF">Ipf/asm.h</Filename>\r
+    <Filename SupArchList="IPF">Ipf/ia_64gen.h</Filename>\r
     <Filename SupArchList="IPF">Ipf/PalCallStatic.s</Filename>\r
     <Filename SupArchList="IPF">Ipf/setjmp.s</Filename>\r
     <Filename SupArchList="IPF">Ipf/longjmp.s</Filename>\r
     <Filename SupArchList="IPF">Ipf/CpuPause.s</Filename>\r
     <Filename SupArchList="IPF">Ipf/CpuFlushTlb.s</Filename>\r
     <Filename SupArchList="IPF">Ipf/GetInterruptState.s</Filename>\r
+    <Filename SupArchList="IPF">Ipf/Non-existing.c</Filename>\r
+    <Filename SupArchList="IPF">Ipf/FlushCacheRange.s</Filename>\r
+    <Filename SupArchList="IPF">Ipf/ReadItc.s</Filename>\r
+    \r
     <Filename SupArchList="EBC">Math64.c</Filename>\r
     <Filename SupArchList="EBC">Unaligned.c</Filename>\r
     <Filename SupArchList="EBC">Ebc/SwitchStack.c</Filename>\r
     <PcdEntry PcdItemType="FIXED_AT_BUILD">\r
       <C_Name>PcdMaximumUnicodeStringLength</C_Name>\r
           <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
-\r
-      <HelpText/>\r
+      <HelpText>If PcdMaximumUnicodeStringLength is not zero, the maximum\r
+                number of characters (not counting the NULL-terminator) in a\r
+                Unicode string cannot exceed it.</HelpText>\r
     </PcdEntry>\r
     <PcdEntry PcdItemType="FIXED_AT_BUILD">\r
       <C_Name>PcdMaximumAsciiStringLength</C_Name>\r
           <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
-\r
-      <HelpText/>\r
+      <HelpText>If PcdMaximumAsciiStringLength is not zero, the maximum number\r
+                of characters (not counting the NULL-terminator) in an ASCII\r
+                string cannot exceed it.</HelpText>\r
     </PcdEntry>\r
     <PcdEntry PcdItemType="FIXED_AT_BUILD">\r
       <C_Name>PcdMaximumLinkedListLength</C_Name>\r
           <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
-\r
-      <HelpText/>\r
+      <HelpText>If PcdMaximumLinkedListLength is not zero, the maximum number\r
+                of nodes (not counting the list header) in a linked list\r
+                cannot exceed it.</HelpText>\r
     </PcdEntry>\r
     <PcdEntry PcdItemType="FIXED_AT_BUILD">\r
       <C_Name>PcdSpinLockTimeout</C_Name>\r
           <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
-\r
-      <HelpText/>\r
+      <HelpText>If PcdSpinLockTimeout is not zero, it stands for the timeout\r
+                value (unit: millisecond) for spin lock.</HelpText>\r
     </PcdEntry>\r
   </PcdCoded>\r
-</ModuleSurfaceArea>
\ No newline at end of file
+</ModuleSurfaceArea>\r