summaryrefslogtreecommitdiff
path: root/EdkModulePkg/Universal/Ebc
diff options
context:
space:
mode:
Diffstat (limited to 'EdkModulePkg/Universal/Ebc')
-rw-r--r--EdkModulePkg/Universal/Ebc/Dxe/Ebc.msa36
-rw-r--r--EdkModulePkg/Universal/Ebc/Dxe/EbcInt.c58
-rw-r--r--EdkModulePkg/Universal/Ebc/Dxe/Ia32/EbcSupport.c10
-rw-r--r--EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c12
-rw-r--r--EdkModulePkg/Universal/Ebc/Dxe/x64/EbcSupport.c10
5 files changed, 48 insertions, 78 deletions
diff --git a/EdkModulePkg/Universal/Ebc/Dxe/Ebc.msa b/EdkModulePkg/Universal/Ebc/Dxe/Ebc.msa
index 243b538..6b43afa 100644
--- a/EdkModulePkg/Universal/Ebc/Dxe/Ebc.msa
+++ b/EdkModulePkg/Universal/Ebc/Dxe/Ebc.msa
@@ -6,8 +6,9 @@
<GuidValue>13AC6DD0-73D0-11D4-B06B-00AA00BD6DE7</GuidValue>
<Version>1.0</Version>
<Abstract>Component description file for Ebc module.</Abstract>
- <Description>This module for the EBC virtual machine implementation.</Description>
- <Copyright>Copyright (c) 2006, Intel Corporation</Copyright>
+ <Description>This module for the EBC virtual machine implementation produces
+ EBC and EBC debug support protocols.</Description>
+ <Copyright>Copyright (c) 2006 - 2007, Intel Corporation</Copyright>
<License>All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -17,7 +18,7 @@
<Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>
</MsaHeader>
<ModuleDefinitions>
- <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>
+ <SupportedArchitectures>IA32 X64 IPF</SupportedArchitectures>
<BinaryModule>false</BinaryModule>
<OutputFileBasename>Ebc</OutputFileBasename>
</ModuleDefinitions>
@@ -25,29 +26,22 @@
<LibraryClass Usage="ALWAYS_CONSUMED">
<Keyword>BaseLib</Keyword>
</LibraryClass>
- <LibraryClass Usage="ALWAYS_CONSUMED">
+ <LibraryClass Usage="ALWAYS_CONSUMED" RecommendedInstanceGuid="bda39d3a-451b-4350-8266-81ab10fa0523">
<Keyword>DebugLib</Keyword>
+ <HelpText>Recommended libary Instance is PeiDxeDebugLibReportStatusCode instance in MdePkg.</HelpText>
</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">
<Keyword>UefiDriverEntryPoint</Keyword>
</LibraryClass>
- <LibraryClass Usage="ALWAYS_CONSUMED">
- <Keyword>ReportStatusCodeLib</Keyword>
- </LibraryClass>
- <LibraryClass Usage="ALWAYS_CONSUMED">
- <Keyword>UefiLib</Keyword>
- </LibraryClass>
- <LibraryClass Usage="ALWAYS_CONSUMED">
- <Keyword>BaseLib</Keyword>
- </LibraryClass>
- <LibraryClass Usage="ALWAYS_CONSUMED">
+ <LibraryClass Usage="ALWAYS_CONSUMED" RecommendedInstanceGuid="f1bbe03d-2f28-4dee-bec7-d98d7a30c36a">
<Keyword>BaseMemoryLib</Keyword>
+ <HelpText>Recommended libary Instance is DxeMemoryLib instance in MdePkg.</HelpText>
</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">
- <Keyword>MemoryAllocationLib</Keyword>
+ <Keyword>UefiBootServicesTableLib</Keyword>
</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">
- <Keyword>UefiBootServicesTableLib</Keyword>
+ <Keyword>MemoryAllocationLib</Keyword>
</LibraryClass>
</LibraryClassDefinitions>
<SourceFiles>
@@ -56,18 +50,18 @@
<Filename>EbcExecute.c</Filename>
<Filename>EbcExecute.h</Filename>
<Filename>Ebc.dxs</Filename>
- <Filename SupArchList="IA32">Ia32/EbcLowLevel.asm</Filename>
- <Filename SupArchList="IA32">Ia32/EbcLowLevel.S</Filename>
+ <Filename SupArchList="IA32" ToolChainFamily="MSFT">Ia32/EbcLowLevel.asm</Filename>
+ <Filename SupArchList="IA32" ToolChainFamily="GCC">Ia32/EbcLowLevel.S</Filename>
<Filename SupArchList="IA32">Ia32/EbcSupport.c</Filename>
- <Filename SupArchList="X64">x64/EbcLowLevel.asm</Filename>
- <Filename SupArchList="X64" ToolChainFamily="gcc">x64/EbcLowLevel.S</Filename>
+ <Filename SupArchList="X64" ToolChainFamily="MSFT">x64/EbcLowLevel.asm</Filename>
+ <Filename SupArchList="X64" ToolChainFamily="GCC">x64/EbcLowLevel.S</Filename>
<Filename SupArchList="X64">x64/EbcSupport.c</Filename>
<Filename SupArchList="IPF">Ipf/EbcLowLevel.s</Filename>
<Filename SupArchList="IPF">Ipf/EbcSupport.c</Filename>
+ <Filename SupArchList="IPF">Ipf/EbcSupport.h</Filename>
</SourceFiles>
<PackageDependencies>
<Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
- <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>
</PackageDependencies>
<Protocols>
<Protocol Usage="ALWAYS_PRODUCED">
diff --git a/EdkModulePkg/Universal/Ebc/Dxe/EbcInt.c b/EdkModulePkg/Universal/Ebc/Dxe/EbcInt.c
index cf68329..52f8d9f 100644
--- a/EdkModulePkg/Universal/Ebc/Dxe/EbcInt.c
+++ b/EdkModulePkg/Universal/Ebc/Dxe/EbcInt.c
@@ -222,12 +222,9 @@ Returns:
//
// Allocate memory for our protocol. Then fill in the blanks.
//
- Status = gBS->AllocatePool (
- EfiBootServicesData,
- sizeof (EFI_EBC_PROTOCOL),
- (VOID **) &EbcProtocol
- );
- if (Status != EFI_SUCCESS) {
+ EbcProtocol = AllocatePool (sizeof (EFI_EBC_PROTOCOL));
+
+ if (EbcProtocol == NULL) {
return EFI_OUT_OF_RESOURCES;
}
@@ -273,7 +270,7 @@ Returns:
}
if (HandleBuffer != NULL) {
- gBS->FreePool (HandleBuffer);
+ FreePool (HandleBuffer);
HandleBuffer = NULL;
}
//
@@ -287,19 +284,16 @@ Returns:
EbcProtocol
);
if (EFI_ERROR (Status)) {
- gBS->FreePool (EbcProtocol);
+ FreePool (EbcProtocol);
return Status;
}
}
//
// Allocate memory for our debug protocol. Then fill in the blanks.
//
- Status = gBS->AllocatePool (
- EfiBootServicesData,
- sizeof (EFI_DEBUG_SUPPORT_PROTOCOL),
- (VOID **) &EbcDebugProtocol
- );
- if (Status != EFI_SUCCESS) {
+ EbcDebugProtocol = AllocatePool (sizeof (EFI_DEBUG_SUPPORT_PROTOCOL));
+
+ if (EbcDebugProtocol == NULL) {
goto ErrorExit;
}
@@ -322,7 +316,7 @@ Returns:
// This is recoverable, so free the memory and continue.
//
if (EFI_ERROR (Status)) {
- gBS->FreePool (EbcDebugProtocol);
+ FreePool (EbcDebugProtocol);
goto ErrorExit;
}
//
@@ -370,11 +364,11 @@ ErrorExit:
}
if (HandleBuffer != NULL) {
- gBS->FreePool (HandleBuffer);
+ FreePool (HandleBuffer);
HandleBuffer = NULL;
}
- gBS->FreePool (EbcProtocol);
+ FreePool (EbcProtocol);
return Status;
}
@@ -894,8 +888,8 @@ Returns:
ThunkList = ImageList->ThunkList;
while (ThunkList != NULL) {
NextThunkList = ThunkList->Next;
- gBS->FreePool (ThunkList->ThunkBuffer);
- gBS->FreePool (ThunkList);
+ FreePool (ThunkList->ThunkBuffer);
+ FreePool (ThunkList);
ThunkList = NextThunkList;
}
//
@@ -912,7 +906,7 @@ Returns:
//
// Now free up the image list element
//
- gBS->FreePool (ImageList);
+ FreePool (ImageList);
return EFI_SUCCESS;
}
@@ -970,12 +964,9 @@ Returns:
//
// Allocate a new one
//
- Status = gBS->AllocatePool (
- EfiBootServicesData,
- sizeof (EBC_IMAGE_LIST),
- (VOID **) &ImageList
- );
- if (Status != EFI_SUCCESS) {
+ ImageList = AllocatePool (sizeof (EBC_IMAGE_LIST));
+
+ if (ImageList == NULL) {
return EFI_OUT_OF_RESOURCES;
}
@@ -987,12 +978,9 @@ Returns:
//
// Ok, now create a new thunk element to add to the list
//
- Status = gBS->AllocatePool (
- EfiBootServicesData,
- sizeof (EBC_THUNK_LIST),
- (VOID **) &ThunkList
- );
- if (Status != EFI_SUCCESS) {
+ ThunkList = AllocatePool (sizeof (EBC_THUNK_LIST));
+
+ if (ThunkList == NULL) {
return EFI_OUT_OF_RESOURCES;
}
//
@@ -1061,8 +1049,8 @@ Returns:
//
// Allocate memory for the protocol, then fill in the fields
//
- Status = gBS->AllocatePool (EfiBootServicesData, sizeof (EFI_EBC_VM_TEST_PROTOCOL), (VOID **) &EbcVmTestProtocol);
- if (Status != EFI_SUCCESS) {
+ EbcVmTestProtocol = AllocatePool (sizeof (EFI_EBC_VM_TEST_PROTOCOL));
+ if (EbcVmTestProtocol == NULL) {
return EFI_OUT_OF_RESOURCES;
}
EbcVmTestProtocol->Execute = (EBC_VM_TEST_EXECUTE) EbcExecuteInstructions;
@@ -1078,7 +1066,7 @@ Returns:
Handle = NULL;
Status = gBS->InstallProtocolInterface (&Handle, &mEfiEbcVmTestProtocolGuid, EFI_NATIVE_INTERFACE, EbcVmTestProtocol);
if (EFI_ERROR (Status)) {
- gBS->FreePool (EbcVmTestProtocol);
+ FreePool (EbcVmTestProtocol);
}
return Status;
}
diff --git a/EdkModulePkg/Universal/Ebc/Dxe/Ia32/EbcSupport.c b/EdkModulePkg/Universal/Ebc/Dxe/Ia32/EbcSupport.c
index 14059d7..ab05449 100644
--- a/EdkModulePkg/Universal/Ebc/Dxe/Ia32/EbcSupport.c
+++ b/EdkModulePkg/Universal/Ebc/Dxe/Ia32/EbcSupport.c
@@ -371,7 +371,6 @@ Returns:
UINT32 Addr;
INT32 Size;
INT32 ThunkSize;
- EFI_STATUS Status;
//
// Check alignment of pointer to EBC code
@@ -383,12 +382,9 @@ Returns:
Size = EBC_THUNK_SIZE;
ThunkSize = Size;
- Status = gBS->AllocatePool (
- EfiBootServicesData,
- Size,
- (VOID *) &Ptr
- );
- if (Status != EFI_SUCCESS) {
+ Ptr = AllocatePool (Size);
+
+ if (Ptr == NULL) {
return EFI_OUT_OF_RESOURCES;
}
//
diff --git a/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c b/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c
index 29ee55b..d60ab09 100644
--- a/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c
+++ b/EdkModulePkg/Universal/Ebc/Dxe/Ipf/EbcSupport.c
@@ -319,7 +319,6 @@ Returns:
UINT64 *Data64Ptr;
UINT32 ThunkSize;
UINT32 Size;
- EFI_STATUS Status;
//
// Check alignment of pointer to EBC code, which must always be aligned
@@ -335,12 +334,9 @@ Returns:
//
Size = EBC_THUNK_SIZE + EBC_THUNK_ALIGNMENT - 1;
ThunkSize = Size;
- Status = gBS->AllocatePool (
- EfiBootServicesData,
- Size,
- (VOID *) &Ptr
- );
- if (Status != EFI_SUCCESS) {
+ Ptr = AllocatePool (Size);
+
+ if (Ptr == NULL) {
return EFI_OUT_OF_RESOURCES;
}
//
@@ -872,6 +868,6 @@ Returns:
Source = (VOID *) EbcSp;
Destination = (VOID *) ((UINT8 *) EbcSp - FrameSize - CPU_STACK_ALIGNMENT);
Destination = (VOID *) ((UINTN) ((UINTN) Destination + CPU_STACK_ALIGNMENT - 1) &~((UINTN) CPU_STACK_ALIGNMENT - 1));
- gBS->CopyMem (Destination, Source, FrameSize);
+ CopyMem (Destination, Source, FrameSize);
EbcAsmLLCALLEX ((UINTN) CallAddr, (UINTN) Destination);
}
diff --git a/EdkModulePkg/Universal/Ebc/Dxe/x64/EbcSupport.c b/EdkModulePkg/Universal/Ebc/Dxe/x64/EbcSupport.c
index 0b0e171..cad5c6a 100644
--- a/EdkModulePkg/Universal/Ebc/Dxe/x64/EbcSupport.c
+++ b/EdkModulePkg/Universal/Ebc/Dxe/x64/EbcSupport.c
@@ -331,7 +331,6 @@ Returns:
UINT64 Addr;
INT32 Size;
INT32 ThunkSize;
- EFI_STATUS Status;
//
// Check alignment of pointer to EBC code
@@ -343,12 +342,9 @@ Returns:
Size = EBC_THUNK_SIZE;
ThunkSize = Size;
- Status = gBS->AllocatePool (
- EfiBootServicesData,
- Size,
- (VOID *) &Ptr
- );
- if (Status != EFI_SUCCESS) {
+ Ptr = AllocatePool (Size);
+
+ if (Ptr == NULL) {
return EFI_OUT_OF_RESOURCES;
}
//