Jordan Justen
fd5eb53d2c
MdePkg BaseLib: Convert X64/CpuId.asm to NASM
...
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
X64/CpuId.asm to X64/CpuId.nasm
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28 09:49:26 +08:00
Jordan Justen
9f6bfc112e
MdePkg BaseLib: Convert X64/CpuIdEx.asm to NASM
...
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert
X64/CpuIdEx.asm to X64/CpuIdEx.nasm
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
2016-06-28 09:49: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
ef7447bb02
MdePkg BaseLib: EXTERNDEF=>EXTERN in X64/SetJump
...
NASM doesn't support EXTERNDEF, so convert this to EXTERN.
This will make it easier to convert this code to NASM using an
automated script.
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:21 +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
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
fbb5393cb7
MdePkg BaseLib Thunk16: Replace X64 GAS Thunk16 with NASM version
...
This is a translation of X64/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@16021 6f19259b-4bc3-4df7-8a09-765794883524
2014-09-01 17:23:33 +00:00
Elvin Li
a93b0e3f68
Use rsp instead of esp to save 64-bit stack pointer.
...
Signed-off-by: Elvin Li <elvin.li@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14812 6f19259b-4bc3-4df7-8a09-765794883524
2013-10-29 06:52:25 +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
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
andrewfish
f2a4d59359
Fix Xcode link failure. Relocations are not supported in .text sections.
...
Per Rui's review of the patch _16GdtrBase is a label that is patched by C code so it does require initialization.
approved-by: andrewfish
reviewed-by: jljusten
reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12515 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-08 20:51:17 +00:00
geekboy15a
3c47fe65ed
MdePkg: Fixed hang/reset in thunk code when building with GCC X64
...
Reverted changes of data areas from .long back to .space 4. This was done
because the size of .long is based off of .int and may vary. Using a fixed size
is required because these values are for patching code. Also note that .space
will automatically initialize the data to zero. Not initializing all values to
zero was causing the hang/reset.
Signed-off-by: geekboy15a
Reviewed-by: darylm503
Reviewed-by: jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12079 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-02 22:29:50 +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
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
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
127010dd96
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@10596 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-24 00:20:35 +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
geekboy15a
4e57f24098
Fixed GCC 4.4 build issue due to incorrect prefix. Now using ASM_PFX to correctly set the prefix.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10377 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-16 22:37:03 +00:00
geekboy15a
bc810c8977
Fixed GCC 4.4 build issue. Also fixed issue where upper 32-bits may be lost during AND operation.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10376 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-16 22:34:22 +00:00
mdkinney
be04587c86
Remove assumption that the transition code for transitioning from 64-bit to 32-bit mode is 64 bytes. Instead compute the size based on the implementation in the ASM file.
...
Update logic to align new 32-bit stack on a 4 byte boundary
Update logic to prevent one slot overlap between the transition code and the new stack.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10133 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-01 05:35:20 +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
0e121f5551
fix GCC build issue, mWait instruction need not the operands.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9526 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-07 03:31:44 +00:00
AJFISH
1afe0401f4
Fixes for ARM build in the EdkCompatibilityPkg and a couple of Xcode fixes for MdePkg.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9520 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-06 02:01:54 +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
qhuang8
09b0fdbbb5
Minor update source to make end-of-line consistent.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9043 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-11 15:37:14 +00:00
qhuang8
0da835f99b
Remove all unnecessary .align directives in MdePkg
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9042 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-11 15:35:27 +00:00
gikidy
ebdad7f865
For X64 BASE_LIBRARY_JUMP_BUFFER is 64-bit aligned, not 128-bit aligned, replace movdqa with movdqu.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8508 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-10 09:00:21 +00:00
gikidy
63b65a9e4f
Save/Restore xmm6-xmm15 in function setJump/longJump for GAS.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8507 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-10 08:07:37 +00:00
gikidy
9b9641c6d9
Save/Restore xmm6-xmm15 in function setJump/longJump.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8506 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-10 07:14:17 +00:00
klu2
0d654ba433
Need use 32-bit register to hold 32-bit stack address.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8481 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-05 13:36:09 +00:00
klu2
5a76206190
Need use 32-bit register to hold 32-bit stack address.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8480 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-05 13:31:58 +00:00
klu2
2e56bb155b
Fix the bug that if code is run above 4G, AsmDisablePaging64 will be failed
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8479 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-05 11:50:39 +00:00
klu2
ce4c0e31b0
Fix the bug that if code is run above 4G, AsmDisablePaging64 will be failure.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8478 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-05 11:21:48 +00:00
qhuang8
2561f56540
1. Fix the bug that we should use rip relative addressing for x64 label to prevent GNU assembly generate incorrect code.
...
2. Sync the bug fix of MS assembly in r8455.
3. Correct the function prototype in comments.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8456 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-03 08:15:18 +00:00
qhuang8
1a76fbef84
Save label "@F" to 64-bit register (r10) instead of 32-bit register (eax) in case label @F is above 4G.
...
Use "far retq" to load CS and 64-bit rip instead.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8455 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-03 08:11:34 +00:00
qhuang8
d48e8b0afa
Use rip relative addressing for x64 label for Thunk16.S to prevent GCC assembly from generating 32-bit value with HIGHLOW fixup.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8444 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-02 23:40:06 +00:00
qhuang8
a81c3daf0a
Correct one minor instruction to clear the lower 4 bits of r11.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8391 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-26 12:04:46 +00:00
qhuang8
a148780114
Fix the bug in x64 thunk code that it cannot handle the case when GDT is loaded in above 4G table memory.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8390 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-26 11:41:12 +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
xli24
d5172f911d
1. Remove .extern from GCC assembly.
...
2. Define macro for .global/.globl in GCC assembly.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8344 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-20 09:42:59 +00:00
qhuang8
744e71a3bf
Fix the bug that EnablePaging64() should assert() for x64 platform.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8223 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-30 07:17:52 +00:00
qhuang8
0fe43214e3
Save segment registers on stack in case the thunk code assembly calls CF9 soft reset and the x64 registers get cleared.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8123 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-17 07:38:57 +00:00
jljusten
c9268416b9
Fix some build issues encountered with ELFGCC.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8060 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-10 20:58:07 +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
xli24
63d7211ebc
Fix the bug that EntryPoint of DisablePaging64() is corrupted.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7250 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-13 04:20:22 +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
qhuang8
04fdba5412
Fix minor issues in GCC assembly. The operand is 64bit and "q" prefix should be applied.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6717 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-25 02:49:23 +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
qhuang8
32ed92de95
Update to use DOS format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6319 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-31 03:42:31 +00:00
xli24
2faf4da5f7
Refine comments of X64 assembly files of MDE BaseLib.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6277 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-28 14:23:36 +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
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
c2049caa25
Update GCC assembly files for MdePkg/Library/BaseLib/X64
...
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@6196 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-23 07:02:59 +00:00
qwang12
8161369252
Update some comments.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6170 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-21 08:23:13 +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
jljusten
0e0c422d4c
MdePkg/Library/BaseLib/X64/ReadCr2.S:
...
MdePkg/Library/BaseLib/X64/ReadMm0.S:
* Fix syntax error for X64 gcc assembly files. (Missing parenthesis.)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5597 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-31 16:23:36 +00:00
eric_tian
6a28ac4441
Gcc cleanup
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5589 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-31 06:56:12 +00:00
eric_tian
85c25283ed
Gcc cleanup for baselib & basememorylib in mdepkg/library/
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5587 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-31 06:23:32 +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
qhuang8
d2e6d78887
1. Add comments about reserve space on space according to x64 calling convention
...
2. Fix comments in SwitchStack as for the x64 calling convention.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5315 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-30 02:03:15 +00:00
xli24
57069be8fb
Update Thunk16.S of X64 for BaseLib.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4620 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-24 02:59:28 +00:00
xli24
de0419128f
Check in implementation in GNU assembly for Thunk16.S in BaseLib.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4614 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-22 08:54:44 +00:00
xli24
ab9a4f1638
Fix bugs in GNU assembly files for writing CR and DR registers.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4590 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-21 03:34:55 +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
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
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
yshang1
733f4094ee
To Fix PVCS 429.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2007 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-23 09:05:19 +00:00
bbahnsen
dfd52cc1c6
Add Thunk16.S -- needs to be ported from masm.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1971 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-17 16:54:19 +00:00
bbahnsen
32804425d7
Add an underscore for gcc.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1969 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-17 16:43:12 +00:00
bbahnsen
e29e52e7c0
Initial port to x86_64 gnu assembly.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1959 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-16 01:11:41 +00:00
bxing
38b5365e39
Enabled 4G+ memory in thunk.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1957 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-15 09:31:03 +00:00
mdkinney
705d3a7756
Use intrinsic
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1670 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-04 23:56:11 +00:00
mdkinney
9730cac8a1
Use intrinsic
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1669 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-04 23:50:23 +00:00
bxing
f23d790a79
Added an extra GDT entry to the GDT used by thunk code. SS register will always be loaded as flat segment before switching to 16-bit mode, since SS might not be always valid for NULL selector is allowed in 64-bit mode.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1541 6f19259b-4bc3-4df7-8a09-765794883524
2006-09-14 16:04:47 +00:00
vanjeff
4a78c00aac
1. cleanup functions header in PeCoffLoaderEx.c
...
2. fixed link error in EnablePaging64.asm
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1175 6f19259b-4bc3-4df7-8a09-765794883524
2006-08-02 03:19:19 +00:00
bxing
ebca816989
Added a 64-bit version of EnablePaging64() on X64. AsmEnablePaging64() is the transition code to switch the processor from 32-bit into 64-bit long mode and thus is typically linked with 32-bit images only. However, it's desired to link the transition code into a 64-bit image in some special cases. CPU driver is a good example among those.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1092 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-25 08:30:02 +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
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
vanjeff
d9da5f5982
1. Sync LinkedList.c with MWG
...
2. Fix one bug in Ipf/InterlockedCompareExchange64.s
3. Fix one bug in AsmDisablePaging64()
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@786 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-06 04:07:24 +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
eb6f775856
Change VOID into VOID * in function header
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@650 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-28 09:01:26 +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
klu2
23f52b03b4
Roll back modification for autogen of assemble code, we do not support PCD autogen for assemble code.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@625 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-26 02:27:11 +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
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
317066baf9
Removed file/folder
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@392 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-02 07:51:15 +00:00
vanjeff
52166c09d6
Added function declaration
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@362 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-01 02:13:30 +00:00
vanjeff
25af9f3043
Created as one wrapper for SwitchStack.c to add assert()
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@351 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-31 09:27:13 +00:00
vanjeff
86d9a2e25e
Changed SwitchStack() to _SwitchStack()
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@349 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-31 08:54:07 +00:00
vanjeff
6586cdf395
Changed LongJump() to _LongJump()
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@348 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-31 08:53:35 +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
bxing
50a3fe9561
Fixed a bug due to misorder of 'push's
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@241 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-23 07:07:41 +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
lgao4
c1288a3926
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@152 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-14 09:16:36 +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