From 1fe4ef1bd813e285525a257af43ddbbcb8018b54 Mon Sep 17 00:00:00 2001 From: qhuang8 Date: Wed, 12 Jul 2006 14:15:40 +0000 Subject: =?UTF-8?q?1.=09Updated=20some=20files=E2=80=99=20description=20fi?= =?UTF-8?q?les=20in=20MdePkg,=20EdkModulePkg=20&=20EdkNt32Pkg.=202.=09Upda?= =?UTF-8?q?te=20.msa=20files=20to=20add=20some=20missing=20files=20files?= =?UTF-8?q?=20in=20MdePkg=203.=09Add=20Help=20text=20to=20Mde=20Library=20?= =?UTF-8?q?related=20PCDs.=204.=09Fix=20some=20bugs=20in=20CpuId.S=20and?= =?UTF-8?q?=20CpuIdEx.S.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@919 6f19259b-4bc3-4df7-8a09-765794883524 --- MdePkg/Library/BaseLib/BaseLib.msa | 26 +++++++++++++-------- MdePkg/Library/BaseLib/Ia32/CpuId.S | 44 ++++++++++++++++++----------------- MdePkg/Library/BaseLib/Ia32/CpuIdEx.S | 4 ++-- 3 files changed, 41 insertions(+), 33 deletions(-) (limited to 'MdePkg/Library/BaseLib') diff --git a/MdePkg/Library/BaseLib/BaseLib.msa b/MdePkg/Library/BaseLib/BaseLib.msa index 64168b4e41..430d74ef0a 100644 --- a/MdePkg/Library/BaseLib/BaseLib.msa +++ b/MdePkg/Library/BaseLib/BaseLib.msa @@ -5,8 +5,8 @@ BASE 27d67720-ea68-48ae-93da-a3a074c90e30 1.0 - Memory-only library functions with no library constructordestructor - FIX ME! + Component description file for Base Library + Base Library implementation. Copyright (c) 2006, Intel Corporation. All rights reserved. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -39,6 +39,7 @@ + BaseLibInternal.h String.c LinkedList.c Synchronization.c @@ -364,6 +365,8 @@ X64/CpuFlushTlb.asm X64/Thunk16.asm Math64.c + Ipf/asm.h + Ipf/ia64_gen.h Ipf/PalCallStatic.s Ipf/setjmp.s Ipf/longjmp.s @@ -394,26 +397,29 @@ PcdMaximumUnicodeStringLength gEfiMdePkgTokenSpaceGuid - - + If PcdMaximumUnicodeStringLength is not zero, the maximum + number of characters (not counting the NULL-terminator) in a + Unicode string cannot exceed it. PcdMaximumAsciiStringLength gEfiMdePkgTokenSpaceGuid - - + If PcdMaximumAsciiStringLength is not zero, the maximum number + of characters (not counting the NULL-terminator) in an ASCII + string cannot exceed it. PcdMaximumLinkedListLength gEfiMdePkgTokenSpaceGuid - - + If PcdMaximumLinkedListLength is not zero, the maximum number + of nodes (not counting the list header) in a linked list + cannot exceed it. PcdSpinLockTimeout gEfiMdePkgTokenSpaceGuid - - + If PcdSpinLockTimeout is not zero, it stands for the timeout + value (unit: millisecond) for spin lock. \ No newline at end of file diff --git a/MdePkg/Library/BaseLib/Ia32/CpuId.S b/MdePkg/Library/BaseLib/Ia32/CpuId.S index 989daba127..c394de926d 100644 --- a/MdePkg/Library/BaseLib/Ia32/CpuId.S +++ b/MdePkg/Library/BaseLib/Ia32/CpuId.S @@ -22,8 +22,6 @@ #------------------------------------------------------------------------------ - - #------------------------------------------------------------------------------ # VOID # EFIAPI @@ -35,29 +33,33 @@ # OUT UINT32 *RegisterOutEdx OPTIONAL # ) #------------------------------------------------------------------------------ -.globl _AsmCpuid +.globl _AsmCpuid _AsmCpuid: - push %ebx - push %edi - movl 12(%esp),%eax + pushl %ebx + pushl %ebp + movl %esp, %ebp + movl 12(%ebp), %eax cpuid - movl %ecx,%edi - movl 16(%esp),%ecx + pushl %ecx + movl 16(%ebp), %ecx jecxz L1 - movl %eax,(%ecx) -L1: - movl 20(%esp),%ecx + movl %eax, (%ecx) +L1: + movl 20(%ebp), %ecx jecxz L2 - movl %ebx,(%ecx) -L2: - movl 24(%esp),%ecx + movl %ebx, (%ecx) +L2: + movl 24(%ebp), %ecx jecxz L3 - movl %edi,(%ecx) -L3: - movl 28(%esp),%ecx + popl (%ecx) +L3: + movl 28(%ebp), %ecx jecxz L4 - movl %edx,(%ecx) -L4: - pop %edi - pop %ebx + movl %edx, (%ecx) +L4: + movl 12(%ebp), %eax + leave + popl %ebx ret + + diff --git a/MdePkg/Library/BaseLib/Ia32/CpuIdEx.S b/MdePkg/Library/BaseLib/Ia32/CpuIdEx.S index 43c23b6415..e5255fb1a3 100644 --- a/MdePkg/Library/BaseLib/Ia32/CpuIdEx.S +++ b/MdePkg/Library/BaseLib/Ia32/CpuIdEx.S @@ -55,13 +55,13 @@ L1: L2: movl 28(%ebp), %ecx jecxz L3 - popl %ecx + popl (%ecx) L3: movl 32(%ebp), %edx jecxz L4 movl %edx, (%ecx) L4: movl 12(%ebp), %eax - pop %ebx leave + pop %ebx ret -- cgit v1.2.3