Jordan Justen
ec27855736
MdePkg BaseLib: Convert Ia32/WriteMm7.asm to NASM
...
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
Ia32/WriteMm7.asm to Ia32/WriteMm7.nasm
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28 09:48:28 +08:00
Jordan Justen
ade2cabddc
MdePkg BaseLib: Convert Ia32/Wbinvd.asm to NASM
...
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
Ia32/Wbinvd.asm to Ia32/Wbinvd.nasm
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28 09:48:28 +08:00
Jordan Justen
55745c2499
MdePkg BaseLib: Convert Ia32/RdRand.asm to NASM
...
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
Ia32/RdRand.asm to Ia32/RdRand.nasm
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28 09:48:27 +08:00
Jordan Justen
2c71f739de
MdePkg BaseLib: Convert Ia32/EnablePaging64.asm to NASM
...
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
Ia32/EnablePaging64.asm to Ia32/EnablePaging64.nasm
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28 09:48:26 +08:00
Jordan Justen
6074ca7022
MdePkg BaseLib: Convert Ia32/DivU64x64Remainder.asm to NASM
...
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
Ia32/DivU64x64Remainder.asm to Ia32/DivU64x64Remainder.nasm
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28 09:48:25 +08:00
Jordan Justen
91d1ad5df3
MdePkg BaseLib: Remove unused GNU assembly files
...
These routines are defined in GccInline.c.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
2016-06-28 09:48:25 +08:00
Jordan Justen
2807e6b86a
MdePkg BaseLib Ia32/DivU64x64Remainder: Make _@DivRemU64x64 private
...
This helps generate proper code when converted to NASM, and there is
also no reason for this symbol to be public.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
2016-06-28 09:48:23 +08:00
Jordan Justen
5fe292b42f
MdePkg BaseLib Ia32 assembly: Specify DWORD sizes
...
NASM wants this code to specify a size.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
2016-06-28 09:48:22 +08:00
Qin Long
3cfc7813bb
MdePkg: Add CPU RdRand access APIs for random number generation
...
Add AsmRdRand16/32/64 APIs for RdRand instruction access to generate
high-quality random number.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qin Long <qin.long@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18518 6f19259b-4bc3-4df7-8a09-765794883524
2015-09-21 05:53:52 +00:00
Michael Kinney
6f7878a972
MdePkg/BaseLib: Preserve EBX register and fix stack offset to LinearAddress in AsmFlushCacheLine()
...
The value of EBX must be preserved to follow IA32 cdecl calling convention in the assembly
implementation of AsmFlushCacheLine(). The CPUID instruction modifies the EBX register.
The EBX register value is saved onto the stack before CPUID and restored from the stack
after CPUID.
The update to the inline assembly implementation of AsmFlushCacheLine() changed the location of the
LinearAddress parameter value on the stack. The hardcoded lookup using [esp + 4] is not correct.
Use the parameter name LinearAddress instead of the hard coded [esp + 4] stack location to prevent
this issue from occurring again if there are changes to the inline assembly in the future.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17279 6f19259b-4bc3-4df7-8a09-765794883524
2015-04-30 07:25:07 +00:00
Michael Kinney
88a75d260c
MdePkg/BaseLib: Support IA32 processors without CMOVx
...
Remove use of CMOVx instruction from IA32 assembly files in BaseLib.
This matches compiler flags for all supported C compilers.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17213 6f19259b-4bc3-4df7-8a09-765794883524
2015-04-27 19:38:39 +00:00
Michael Kinney
881813d7a9
MdePkg/BaseLib: Support IA32 processors without CLFLUSH
...
Use CPUID Leaf 01 to detect support for CLFLUSH instruction.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17212 6f19259b-4bc3-4df7-8a09-765794883524
2015-04-27 19:37:15 +00:00
Jordan Justen
15f8eef784
MdePkg NASM Thunk16: Add missing ASM_PFX for InternalAsmThunk16
...
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16059 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-04 15:17:57 +00:00
Jordan Justen
eabcdf3a34
MdePkg NASM Thunk16: Work around NASM 2.09.04 - 2.10rc1 bug
...
Without this change, NASM 2.09.04 will hang with OVMF+CSM on both IA32
and X64.
Tested on OVMF+CSM on GCC49 with NASM 2.07, 2.09.04 and 2.11.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16058 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-04 15:17:48 +00:00
Jordan Justen
03e9db1575
MdePkg BaseLib NASM Thunk16: Initialize _16GdtrBase to 0
...
Previously we were setting it to the start of the GDT in the UEFI
driver's copy of BaseLib. This address is irrelavent, since the C code
will initialize it to the cooresponding address after the Thunk16 code
has been placed in low memory.
Additionally, initializing this was causing a link error for the
XCLANG toolchain.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16025 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-01 17:24:08 +00:00
Jordan Justen
7458df400c
MdePkg BaseLib NASM Thunk16: Remove remaining 'DB' code
...
Convert remaining 'DB' code to assembly code by:
* Move instruction immediate data labels to end of instruction
* Use strict keyword to make sure immediate data size is not optimized
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16024 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-01 17:23:57 +00:00
Jordan Justen
f6888eea46
MdePkg BaseLib NASM Thunk16: Use bits 16 for 16-bit code
...
By using 'bits 16', we can write code for 16-bit use the actual
assembly syntax rather than 'DB' and sometimes writing code with
seemingly incorrect operands because we know it will run correctly
when the processor is running in 16-bit mode.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16023 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-01 17:23:51 +00:00
Jordan Justen
a8458d6cb3
MdePkg BaseLib NASM Thunk16: Use NASM local labels
...
http://www.nasm.us/doc/nasmdoc3.html#section-3.9
A local label is a label beginning with the period, and it's actual
name is prefixed by the previous non-local label.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16022 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-01 17:23:39 +00:00
Jordan Justen
6dab5c8a8a
MdePkg BaseLib Thunk16: Replace IA32 GAS Thunk16 with NASM version
...
This is a translation of Ia32/Thunk16.asm to NASM.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16020 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-01 17:23:22 +00:00
Gao, Liming
1be8039054
MdePkg: Fix Clang build failure
...
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gao, Liming <liming.gao@intel.com>
Reviewed-by: Andrew Fish <afish@apple.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15784 6f19259b-4bc3-4df7-8a09-765794883524
2014-08-11 07:05:49 +00:00
Gao, Liming
e837e22a94
Correct comment typo in AsmReadCr0() function.
...
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gao, Liming <liming.gao@intel.com>
Reviewed-by: Ni, Ruiyu <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15581 6f19259b-4bc3-4df7-8a09-765794883524
2014-06-24 02:22:47 +00:00
David Woodhouse
af8aa62d59
MdePkg: First instruction after clearing CR0.PE must be a far jmp.
...
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15029 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-30 01:14:13 +00:00
David Woodhouse
321c89c208
Clean up hard-coded offsets and other utter bogosity in Thunk16.S
...
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15028 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-30 01:12:10 +00:00
niruiyu
4e6b101f3d
Fix CpuIdEx.asm to return correct ECX/EDX value.
...
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14134 6f19259b-4bc3-4df7-8a09-765794883524
2013-02-17 06:35:08 +00:00
li-elvin
48c8b6a299
Current Thunk16.asm implementation clears reserved bits, which does not follow IA32 SDM. Now the fix is to only clear PAE and PSE bit of CR4 for real mode.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14037 6f19259b-4bc3-4df7-8a09-765794883524
2013-01-07 07:12:19 +00:00
niruiyu
de74f0c286
Correct a bug in AsmCpuidEx() to return correct ECX and EDX.
...
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Jeff Fan <jeff.fan@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13359 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-25 03:02:26 +00:00
lgao4
c8641de387
Roll back the previous change in MdePkg BaseLib Ia32 Thunk16.S and EcpPkg GlueLib BaseLib Ia32 Thunk16.S, and still use the hard code offset in them to avoid GCC compiler create the unexpected instruction.
...
Signed-off-by: lgao4
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12898 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-28 09:48:15 +00:00
lgao4
fe28761275
Clean up the hard code offset in MdePkg BaseLib Ia32 Thunk16.S and EcpPkg GlueLib BaseLib Ia32 Thunk16.S.
...
Signed-off-by: lgao4
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12889 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-20 09:50:19 +00:00
lgao4
c577049aaf
Fix the issue to clear the high 16-bit of EAX before use it Thunk code.
...
This patch updates MdePkg BaseLib, EcpPkg EdkIIGlueLib BaseLib and ThunkLib.
Signed-off-by: lgao4
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12876 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-15 08:27:17 +00:00
hhtian
4223e4f4c9
Minor copyright format update
...
Signed-off-by: hhtian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12334 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-13 07:48:35 +00:00
andrewfish
bab427db7d
MdePkg: Fix X64 clang compile issues.
...
Fixed issues with X64 clang, and also make StackSwitch push a zero on the new stack to prevent a stack unwind into memory that is no longer valid.
signed-off-by: andrewfish
reviewed-by: lgao4
reviewed-by: mdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12007 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-12 03:01:34 +00:00
jljusten
dccf78f0a2
MdePkg: Fix GCC Thunk support for IA32
...
In r11047 Ia32/Thunk.S was modified. However, the current
implemention of Ia32/Thunk.S has contant values in the code
which must be updated if the code is changed.
This change updates those constants for the r11047 change.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11121 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-06 06:06:35 +00:00
li-elvin
4d4c535a32
Fix the issue that the high 16-bit of EAX may contain invalid data, which cause bad stack pointer, the change will ensure the high 16-bit of EAX is cleared.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11047 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-12 07:47:27 +00:00
sfu5
f0b0ba3177
Refine code.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10793 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-13 02:47:22 +00:00
myronporter
2fc59a003e
Minor grammatical work--mostly adding periods. Items with ONLY period added did not have the heading date changed, but Items with content changes had heading copyright dates updated. Sending separately a list of files missing Doxygen @param and @return information. (PENDING)
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10604 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-25 21:56:02 +00:00
MyronPorter
e4a34497b4
Minor grammatical work--mostly adding periods. Items with ONLY period added did not have the heading date changed, but Items with content changes had heading copyright dates updated. Sending separately a list of files missing Doxygen @param and @return information. (PENDING)
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10593 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-22 22:59:38 +00:00
myronporter
35a1715411
Minor grammatical work--mostly adding periods. Sending separately a list of files missing Doxygen @param and @return information.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10572 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-11 00:02:51 +00:00
geekboy15a
2bd78c92c6
Fixed issue with InternalX86ReadIdtr referencing LDT read and not IDT read operation.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10559 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-01 22:46:53 +00:00
qhuang8
d01a90fb3e
Fix some typos
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10521 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-20 05:23:50 +00:00
hhtian
c9b34b8cb3
Update copyright format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10506 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-18 11:40:39 +00:00
qhuang8
cf683fedc7
1. Restore the inline C implementation of GCC assembly files that was temporarily removed in Svn r10045.
...
2. Remove 139 GCC assembly files whose functionality have been covered in the inline C implementation.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10503 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-18 05:37:58 +00:00
hhtian
bb817c56c5
Update the copyright notice format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10405 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-23 16:00:47 +00:00
klu2
28b5f7c062
Disable interrupt when changing IDTR register.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10046 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-23 07:32:20 +00:00
qhuang8
f18f2882e9
Temporarily remove the C implementation of some GCC assembly files in MdePkg. They are kept in repository and will be re-evaluate later.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10045 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-23 04:56:55 +00:00
qhuang8
ea6898b902
Clean up MdePkg source to correct some coding style issues, etc.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9832 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-27 03:25:28 +00:00
eric_tian
6741aad96b
according to IA32 intel architecture spec, mwait instuction needs not the operands.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9527 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-07 04:15:00 +00:00
klu2
6a8e44d9c6
Add ASM_PFX() for exposed symoble from assemble to C
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9435 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-17 06:52:34 +00:00
mdkinney
7f22d35110
Fix file headers
...
Move stack alignment check from CPU specific files into common SwitchStack() function and add VA_END() to SwitchStack().
Fix incorrect syntax for ASM_FUNCTION_REMOVE_IF_UNREFERENCED
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9193 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-24 23:53:23 +00:00
qhuang8
ebd04fc2e5
Update to make end-of-line consistent for all source files in MdePkg. There are no other updates besides that change.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9141 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-19 14:02:07 +00:00
mdkinney
64698eb841
Add ARM support
...
Add C inline assembly files for IA32 and X64 GCC builds.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9113 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-18 21:04:14 +00:00
xli24
132f41f0a9
Replace .globl with ASM_GLOBAL
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8346 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-20 10:22:09 +00:00
mdkinney
bbc3c2d526
Split out Synchronization Library from Base Library
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7378 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-30 00:47:57 +00:00
qhuang8
373ade0eb6
Update copyright for files modified in this year
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7148 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-29 14:07:07 +00:00
gikidy
2fe241a290
Synchronize comment of BaseLib.h and it's implementation to match the Spec.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6929 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-09 07:02:26 +00:00
qhuang8
030cd1a2e9
Update the text to use "x64" instead of "X64" in MdePkg.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6854 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-05 03:23:13 +00:00
qhuang8
be5f161485
Add AsmEnableCache() and AsmDisableCache() as the IA32 & x64 specific BaseLib API.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6807 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-03 02:19:49 +00:00
qhuang8
e73bf9f394
Use ".486" for the instruction of "wbinvd"
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6713 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-25 00:05:41 +00:00
mdkinney
9f4f2f0e15
Add EnableCache() and DisableCache() implementations for IA32 and X64 to the BaseLib
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6705 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-24 08:30:58 +00:00
qhuang8
6f890d5b40
Detab
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6639 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-19 15:22:53 +00:00
qhuang8
b1ff428c96
Update to use DOS format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6360 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-03 09:25:10 +00:00
qhuang8
47fc17d8a9
Use #include "XXX.h" for module internal header files.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6330 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-31 04:32:02 +00:00
vanjeff
57246fe073
sync comments.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6274 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-28 09:51:44 +00:00
vanjeff
bb40027d7c
move Ia32DivS64x64Remainder.c to Ia32/DivS64x64Remainder.c.
...
remove #ifdef _MS_EXTENTION_, since those files has been assigned to MS compiler in INF file.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6259 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-28 03:19:37 +00:00
vanjeff
aa5f2556fb
Copied remotely
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6258 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-28 03:16:59 +00:00
xli24
7e43ed89b2
Refine code for ECC check.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6217 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-24 08:18:36 +00:00
xli24
14f268ba2a
Revert CpuId and CpuIdEx to r6213.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6216 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-24 07:39:52 +00:00
xli24
610204a84c
Sync function prototype of CpuId and CpuIdEx with MDE library specification.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6215 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-24 07:05:21 +00:00
vanjeff
44b013bd6e
ECC Cleanup.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6213 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-24 06:06:42 +00:00
xli24
1f86b07d91
Update GCC assembly files for MdePkg/Library/BaseLib/Ia32
...
1. Fix bugs in assembly instructions
2. Change module names in comments from .asm to .S
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6193 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-23 06:20:02 +00:00
vanjeff
710a5b3584
1.removed DivS64x64Remainder.c since it has been moved to upper directory.
...
2.removed blank lines from DivU64x32Remainder.c
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6183 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-22 08:14:35 +00:00
vanjeff
1efcc4ae46
remove unnecessary comments introduced by tools from MdePkg. The regular express is "//^p//[ ]Include[ ]common[ ]header[ ]file[ ]for[ ]this[ ]module[.]^p//"
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5911 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 07:46:17 +00:00
vanjeff
835849540d
remove '../' from Base Library.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5878 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-11 09:12:14 +00:00
lgao4
a8ff971524
Cleanup Cpu library class and CpuLib instance and BaseLib instance; and add comments for the confused logic in IfrSupportLib instance.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5694 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-20 09:15:34 +00:00
yshang1
42eedea958
Code Scrub for MdePkg.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5567 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-25 12:21:57 +00:00
yshang1
38bbd3d91c
Code scrub:
...
MdePkg/Library/BaseCacheMaintenanceLib
MdePkg/Library/BaseDebugLibNull
MdePkg/Library/BaseIoLibIntrinsic
MdePkg/Library/BaseLib
MdePkg/Library/BaseMemoryLib
MdePkg/Library/BaseMemoryLibMmx
MdePkg/Library/BaseMemoryLibOptDxe
MdePkg/Library/BaseMemoryLibOptPei
MdePkg/Library/BaseMemoryLibRepStr
MdePkg/Library/BaseMemoryLibSse2
MdePkg/Library/BasePeCoffGetEntryPointLib
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5426 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-08 09:38:43 +00:00
klu2
2a254b9046
Fix typo in comment.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5108 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-22 05:16:14 +00:00
qhuang8
9e77c2c3b7
Replace "addr16" with other instructions.
...
Thunk16.S was merely "translated" from Thunk16.asm to ensure of the binary equivalence.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4812 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-10 05:57:03 +00:00
qhuang8
41c7f55141
Remove the DivU64x64Remainder.c (embedded asm version)for IA32 architecture. It cannot handle the case when divisor is less than 4G.
...
Make MSFT tool chain uses the ASM version, which can handle the case in an size efficient way.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4654 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-01 15:05:08 +00:00
qwang12
bff2467aff
add in include for header file to get value for MACRO THUNK_ATTRIBUTE_DISABLE_A20_MASK_KBD_CTRL
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4128 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-16 07:10:15 +00:00
vprabhal
d331a1e391
these files have moved to cpulib
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4098 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-11 16:26:17 +00:00
AJFISH
d5b86e43cf
Removed MdePkg usage of ModuleName: in file headers
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3217 6f19259b-4bc3-4df7-8a09-765794883524
2007-07-12 22:59:43 +00:00
vanjeff
f1baef624f
1. Port X64, IPF and EBC arch for BaseLib
...
2. Port X64 arch codes for BaseMemoryLibRepStr and BaseMemoryLibSee2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2955 6f19259b-4bc3-4df7-8a09-765794883524
2007-07-02 09:34:25 +00:00
AJFISH
f734a10ab1
Removed CommonHeader.h generated file from the MdePkg.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2922 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-29 23:22:13 +00:00
vanjeff
e1f414b6a7
Import some basic libraries instances for Mde Packages.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2704 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-22 03:21:45 +00:00
lhauch
586cd1f1f4
Moved the MdePkg to OldMdePkg so that new code in MdePkg does not break existing builds. Also updated the SPD and FPD files UiNames
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2616 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-01 14:49:55 +00:00
vanjeff
cb41bea732
1. Removed AsmSwitchStackAndBackingStore from BaseLib.h
...
2. Modified SwitchStack definition update to MWG 0.60e.
3. Added BaseLib/Ipf/InternalSwitchStack.c and removed BaseLib/Ipf/Non-existing.c
4. Updated any references of AsmSwitchStackAndBackingStore to SwichStack on IPF.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2499 6f19259b-4bc3-4df7-8a09-765794883524
2007-03-22 03:03:32 +00:00
vanjeff
e5f461a850
1. Remove #ifdef _MSC_EXTENSION_ from all source files
...
2. Remove #ifdef _GCC_ from all resource files
3. Remove #if 0 from all resource files
4. Remove #ifdef MDE_CPU_IPF and #ifdef MDE_CPU_EBC
5. Remove #progam from Decode.c
6. Remove #ifdef TIANO_EXTENSION_FLAG from source files
7. Remove #ifdef SUPPORT_IPV6, since code base doesn't support IPV6 at all.
8. Remove #ifdef SpecialNowaitVersion from pxe_bc_mtftp.c, since it's only used for test.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2470 6f19259b-4bc3-4df7-8a09-765794883524
2007-03-15 02:33:16 +00:00
bxing
a9a812a0ed
1. Added comments to ASM files
...
2. Fixed a bug in 64-bit AsmDisablePaging64(), which may cause a #GP exception.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2206 6f19259b-4bc3-4df7-8a09-765794883524
2007-01-10 06:57:04 +00:00
tgingold
a2b1bf96b3
Use ASM_PFX to optionnaly set the underscore prefix
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2179 6f19259b-4bc3-4df7-8a09-765794883524
2007-01-06 14:52:39 +00:00
rsun3
2f8df87003
Fix a bug in InternalMathDivRemU64x64(). The bug is that the 64-bit divisor is designed to be loaded to ecx:ebx but the high 4 byte of the divisor is forgotten to be loaded to ecx
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1693 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-09 10:09:26 +00:00
mdkinney
32a4d5cecf
Use intrinsic
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1662 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-04 23:07:25 +00:00
qhuang8
b7089db120
1.Fix .global issue in GAS (EdkT207).
...
2.Fix Label start with @ (EdkT208).
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1610 6f19259b-4bc3-4df7-8a09-765794883524
2006-09-25 10:05:26 +00:00
mdkinney
23086ba84c
Optimize the size of the Base Library for the MSFT 32-bit tool chains by taking advantage of inline assembly.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1567 6f19259b-4bc3-4df7-8a09-765794883524
2006-09-19 19:04:40 +00:00
qhuang8
57315d7035
Fix a typo.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1176 6f19259b-4bc3-4df7-8a09-765794883524
2006-08-02 04:33:35 +00:00
bxing
3f566587ae
1. Updated function headers in all assembly files.
...
2. Split x86LowLevel.c into a bunch of C files to make images linked with BaseLib smaller.
3. Fixed a few minor bugs.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1066 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-21 08:47:38 +00:00
vanjeff
bda7fbcc2f
1.Added EFIAPI for some assembly functions declare
...
2.Modified some functions header
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1052 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-20 02:48:06 +00:00
vanjeff
1ea5ca46c7
1. added functions header for BaseUefiDecompressLi
...
2. added some internal functions header for BaseLib
3. added EFIAPI for some internal assembly files declare
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1050 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-19 17:37:07 +00:00
bxing
bbe4ba8149
Modified coding style, removed unnecessary comments and "offset" key words.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1033 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-17 09:38:46 +00:00
qhuang8
44cf7a02c1
Port thunk16 code from MSFT to GCC assembly.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@999 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-14 06:30:17 +00:00
qhuang8
64ad76699c
1. Add Assert in SetJump.S
...
2. Rename internal function of ModU64x32.S to avoid collision.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@948 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-13 04:58:40 +00:00
qhuang8
1fe4ef1bd8
1. Updated some files’ description files in MdePkg, EdkModulePkg & EdkNt32Pkg.
...
2. Update .msa files to add some missing files files in MdePkg
3. Add Help text to Mde Library related PCDs.
4. Fix some bugs in CpuId.S and CpuIdEx.S.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@919 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-12 14:15:40 +00:00
qhuang8
bd0cd44be5
sync GCC assembly files with MASM assembly files
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@878 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-11 10:25:13 +00:00
jwang36
a661b6870a
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@742 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-04 12:12:33 +00:00
vanjeff
30817eb4e4
1.Updated some functions header of BaseLib with new MWG spec
...
2.Rollback EnablePaging64.asm
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@669 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-30 08:40:03 +00:00
vanjeff
939d540699
1. Fixed bug in FlushCacheLine.asm, added return value
...
2. Updated AsmEnablePaging64(), added far jump to long mode with updating CS
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@649 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-28 08:42:05 +00:00
qhuang8
24e25d11c0
• BaseMemoryLib:
...
Modify some Aassert()s conditions to sync with MWG 0.56d
Modify some defects in function header.
• PostCodeLib:
Implement PeiDxePostCodeLibReportStatusCode.
• Misc
Rename BaseDebugLibReportStatusCode to PeiDxeDebugLibReportStatusCode
Remove tabs in all .c and .h files in MdePkg.
Rename PeiServicesReinstallPpi() to PeiServicesReInstallPpi()
Adjust some minor coding style in PeCoffLoaderGetEntryPointerLib()
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@626 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-26 10:18:28 +00:00
bbahnsen
975201130c
Use capital S for GCC assembly. This enables pre-processing for PCD support.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@576 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-20 21:50:44 +00:00
lgao4
92b34fde25
Rool Back this modification to enable gcc Build.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@544 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-16 16:45:27 +00:00
bxing
6fe251ad5c
Updated CpuFlushCacheLine() to return the address flushed.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@535 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-16 07:02:23 +00:00
bxing
ae603c64c2
Thunk16.asm's can use constants defined in BaseLib.h now.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@525 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-15 10:25:17 +00:00
bbahnsen
508daae71b
Fix an assembler warning.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@514 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-14 15:37:59 +00:00
bbahnsen
ec8547f6ef
Fixes for gcc assembly.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@485 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-12 17:11:17 +00:00
bxing
15176e0556
Fixed mistyping in Ia32/LongJump.asm and X64/LongJump.asm
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@466 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-10 09:57:35 +00:00
bxing
dee4740abe
1. Added AsmCpuidEx() to BaseLib
...
2. Added DecimalToBcd8() and BcdToDecimal8() to String.c
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@465 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-10 09:37:12 +00:00
bxing
4cbd217532
1. Updated SetJump() and LongJump() for IPF
...
2. Added assertion for SetJump() for all architectures
3. Added CpuSleep() for IPF
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@464 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-10 07:16:11 +00:00
vanjeff
7d7c2b4640
Deleted x64\SwitchStack.c Ipf/SwitchStack.c.
...
Added SwitchStack.c in Baselib\
Rename Ia32/SwitchStack.c to Ia32/InternalSwitchStack.c
Changed _SwitchStack() into InternalSwitchStack() in SwitchStack.asm and SwitchStack.s
Fixed one bug in LinkedList.c, that List length couldn't up to PcdMaximumLinkedListLength.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@394 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-02 07:58:31 +00:00
vanjeff
692ad74b77
Removed file/folder
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@391 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-02 07:50:05 +00:00
vanjeff
e513625f22
change LongJump() to _LongJump()
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@344 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-31 08:50:43 +00:00
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
bbahnsen
ab191ed4ff
Thunk16.s has not been ported to GCC. This will at least get past the assembler.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@204 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-19 15:25:52 +00:00
bbahnsen
2cad7af672
Get the underscore typed in correctly.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@193 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-17 23:47:47 +00:00
bbahnsen
7962c48c97
Resync the GNU assembly to the MASM code.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@192 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-17 23:30:57 +00:00
bbahnsen
f7f897daef
Fixes for GCC.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@180 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-16 20:34:23 +00:00
bxing
97d92bdaf0
Updated BaseLib for THUNK functions and some CPU functions
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@158 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-15 11:14:20 +00:00
bbahnsen
185d764218
Rename dirs
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@16 6f19259b-4bc3-4df7-8a09-765794883524
2006-04-24 22:17:39 +00:00