From: yshang1 Date: Tue, 17 Jul 2007 09:19:49 +0000 (+0000) Subject: To support GCC build. Currently, it could not pass GCC build,since tool could not... X-Git-Tag: edk2-stable201903~22664 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=48924f1488dc5ab29775e28c9e9a34c613733ce8 To support GCC build. Currently, it could not pass GCC build,since tool could not build .S file. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3297 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/MdePkg/Library/PeiServicesTablePointerLibIdt/Ia32/AsmPeiSevicesTablePointer.c b/MdePkg/Library/PeiServicesTablePointerLibIdt/Ia32/AsmPeiSevicesTablePointer.c index aa578ee130..d6c5bb4ad4 100644 --- a/MdePkg/Library/PeiServicesTablePointerLibIdt/Ia32/AsmPeiSevicesTablePointer.c +++ b/MdePkg/Library/PeiServicesTablePointerLibIdt/Ia32/AsmPeiSevicesTablePointer.c @@ -12,6 +12,11 @@ **/ +// +// Include common header file for this module. +// +#include "InternalPeiServicesTablePointer.h" + EFI_PEI_SERVICES ** EFIAPI AsmPeiSevicesTablePointer ( diff --git a/MdePkg/Library/PeiServicesTablePointerLibIdt/InternalPeiServicesTablePointer.h b/MdePkg/Library/PeiServicesTablePointerLibIdt/InternalPeiServicesTablePointer.h index a2588cb759..51d2d92202 100644 --- a/MdePkg/Library/PeiServicesTablePointerLibIdt/InternalPeiServicesTablePointer.h +++ b/MdePkg/Library/PeiServicesTablePointerLibIdt/InternalPeiServicesTablePointer.h @@ -16,6 +16,14 @@ #ifndef __INTERNAL_PEI_SERVICES_TABLE_POINTER_H__ #define __INTERNAL_PEI_SERVICES_TABLE_POINTER_H__ + +#include +// +// The Library classes this module consumes +// +#include +#include + extern EFI_PEI_SERVICES ** EFIAPI diff --git a/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c b/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c index a75ddb1400..6a52451381 100644 --- a/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c +++ b/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointer.c @@ -14,7 +14,6 @@ #include "InternalPeiServicesTablePointer.h" - /** The function returns the pointer to PeiServicee following diff --git a/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf b/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf new file mode 100644 index 0000000000..5f6c39a283 --- /dev/null +++ b/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf @@ -0,0 +1,65 @@ +#/** @file +# Component description file for IPF KR1 Pei Services Table Pointer Library +# +# PEI Services Table Library implementation that retrieves a pointer to the PEI +# Services Table from the KR1 register on IPF. +# Copyright (c) 2006 - 2007, 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 +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# +# +#**/ + +################################################################################ +# +# Defines Section - statements that will be processed to create a Makefile. +# +################################################################################ +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = PeiServicesTablePointerLibIdt + FILE_GUID = DED3F743-CE2C-4ba6-92A2-FFCE2A6D72D9 + MODULE_TYPE = PEIM + VERSION_STRING = 1.0 + LIBRARY_CLASS = PeiServicesTablePointerLib|PEIM PEI_CORE + EDK_RELEASE_VERSION = 0x00020000 + EFI_SPECIFICATION_VERSION = 0x00020000 + + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 +# + +################################################################################ +# +# Sources Section - list of files that are required for the build to succeed. +# +################################################################################ +[Sources.Ia32] + Ia32/AsmPeiSevicesTablePointer.c||MSFT||| + Ia32/AsmPeiSevicesTablePointer.S||GCC||| + PeiServicesTablePointer.c + +[Sources.X64] + x64/AsmPeiSevicesTablePointer.asm||MSFT||| + x64/AsmPeiSevicesTablePointer.S||GCC||| + PeiServicesTablePointer.c + + +################################################################################ +# +# Library Class Section - list of Library Classes that are required for +# this module. +# +################################################################################ + +[LibraryClasses] + DebugLib + diff --git a/MdePkg/Library/PeiServicesTablePointerLibIdt/x64/AsmPeiSevicesTablePointer.S b/MdePkg/Library/PeiServicesTablePointerLibIdt/x64/AsmPeiSevicesTablePointer.S index 30eccdd0b4..66697c24bb 100644 --- a/MdePkg/Library/PeiServicesTablePointerLibIdt/x64/AsmPeiSevicesTablePointer.S +++ b/MdePkg/Library/PeiServicesTablePointerLibIdt/x64/AsmPeiSevicesTablePointer.S @@ -1,36 +1,36 @@ -#------------------------------------------------------------------------------ -# -# 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 -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# -# Module Name: -# -# AsmPeiSevicesTablePointer.S -# -# Abstract: -# -# AsmPeiSevicesTablePointer function -# -# Notes: -# -#------------------------------------------------------------------------------ - - -#------------------------------------------------------------------------------ -# EFI_PEI_SERVICES ** -# EFIAPI -# AsmPeiSevicesTablePointer ( -# ); -#------------------------------------------------------------------------------ -.global AsmPeiSevicesTablePointer; -.align 16; -AsmPeiSevicesTablePointer: - sidt (%rcx) - movq -8(%rcx), %rcx - ret +#------------------------------------------------------------------------------ +# +# 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 +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# +# Module Name: +# +# AsmPeiSevicesTablePointer.S +# +# Abstract: +# +# AsmPeiSevicesTablePointer function +# +# Notes: +# +#------------------------------------------------------------------------------ + + +#------------------------------------------------------------------------------ +# EFI_PEI_SERVICES ** +# EFIAPI +# AsmPeiSevicesTablePointer ( +# ); +#------------------------------------------------------------------------------ +.global AsmPeiSevicesTablePointer; +.align 16; +AsmPeiSevicesTablePointer: + sidt (%rcx) + movq -8(%rcx), %rcx + ret diff --git a/MdePkg/MdePkg.dsc b/MdePkg/MdePkg.dsc index f36119fcc7..e64c810a3c 100644 --- a/MdePkg/MdePkg.dsc +++ b/MdePkg/MdePkg.dsc @@ -132,12 +132,14 @@ ${WORKSPACE}\MdePkg\Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf ${WORKSPACE}/MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf ${WORKSPACE}/MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf + ${WORKSPACE}/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf [Components.X64] ${WORKSPACE}\MdePkg\Library/BaseMemoryLibSse2/BaseMemoryLibSse2.inf ${WORKSPACE}\MdePkg\Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf ${WORKSPACE}/MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf ${WORKSPACE}/MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf + ${WORKSPACE}/MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf [Components.IPF] ${WORKSPACE}/MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf