OvmfPkg Sec: Convert Ia32/SecEntry.asm to NASM
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/SecEntry.asm to Ia32/SecEntry.nasm Note: Manually collapsed .inf sources Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16291 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,59 +0,0 @@
|
|||||||
# TITLE SecEntry.asm
|
|
||||||
#------------------------------------------------------------------------------
|
|
||||||
#*
|
|
||||||
#* Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
|
|
||||||
#* 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.
|
|
||||||
#*
|
|
||||||
#* CpuAsm.asm
|
|
||||||
#*
|
|
||||||
#* Abstract:
|
|
||||||
#*
|
|
||||||
#------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
#include <Base.h>
|
|
||||||
|
|
||||||
#EXTERN ASM_PFX(SecCoreStartupWithStack)
|
|
||||||
|
|
||||||
#
|
|
||||||
# SecCore Entry Point
|
|
||||||
#
|
|
||||||
# Processor is in flat protected mode
|
|
||||||
#
|
|
||||||
# @param[in] EAX Initial value of the EAX register (BIST: Built-in Self Test)
|
|
||||||
# @param[in] DI 'BP': boot-strap processor, or 'AP': application processor
|
|
||||||
# @param[in] EBP Pointer to the start of the Boot Firmware Volume
|
|
||||||
#
|
|
||||||
# @return None This routine does not return
|
|
||||||
#
|
|
||||||
ASM_GLOBAL ASM_PFX(_ModuleEntryPoint)
|
|
||||||
ASM_PFX(_ModuleEntryPoint):
|
|
||||||
|
|
||||||
#
|
|
||||||
# Load temporary RAM stack based on PCDs
|
|
||||||
#
|
|
||||||
.set SEC_TOP_OF_STACK, FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) + \
|
|
||||||
FixedPcdGet32 (PcdOvmfSecPeiTempRamSize)
|
|
||||||
movl $SEC_TOP_OF_STACK, %eax
|
|
||||||
movl %eax, %esp
|
|
||||||
nop
|
|
||||||
|
|
||||||
#
|
|
||||||
# Setup parameters and call SecCoreStartupWithStack
|
|
||||||
# [esp] return address for call
|
|
||||||
# [esp+4] BootFirmwareVolumePtr
|
|
||||||
# [esp+8] TopOfCurrentStack
|
|
||||||
#
|
|
||||||
pushl %eax
|
|
||||||
pushl %ebp
|
|
||||||
call ASM_PFX(SecCoreStartupWithStack)
|
|
||||||
|
|
||||||
|
|
||||||
#END
|
|
||||||
|
|
@@ -1,4 +1,3 @@
|
|||||||
TITLE SecEntry.asm
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
;*
|
;*
|
||||||
;* Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
|
;* Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
|
||||||
@@ -18,11 +17,9 @@
|
|||||||
|
|
||||||
#include <Base.h>
|
#include <Base.h>
|
||||||
|
|
||||||
.686
|
SECTION .text
|
||||||
.model flat,C
|
|
||||||
.code
|
|
||||||
|
|
||||||
EXTERN SecCoreStartupWithStack:PROC
|
extern ASM_PFX(SecCoreStartupWithStack)
|
||||||
|
|
||||||
;
|
;
|
||||||
; SecCore Entry Point
|
; SecCore Entry Point
|
||||||
@@ -35,12 +32,13 @@ EXTERN SecCoreStartupWithStack:PROC
|
|||||||
;
|
;
|
||||||
; @return None This routine does not return
|
; @return None This routine does not return
|
||||||
;
|
;
|
||||||
_ModuleEntryPoint PROC PUBLIC
|
global ASM_PFX(_ModuleEntryPoint)
|
||||||
|
ASM_PFX(_ModuleEntryPoint):
|
||||||
|
|
||||||
;
|
;
|
||||||
; Load temporary RAM stack based on PCDs
|
; Load temporary RAM stack based on PCDs
|
||||||
;
|
;
|
||||||
SEC_TOP_OF_STACK EQU (FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) + \
|
%define SEC_TOP_OF_STACK (FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) + \
|
||||||
FixedPcdGet32 (PcdOvmfSecPeiTempRamSize))
|
FixedPcdGet32 (PcdOvmfSecPeiTempRamSize))
|
||||||
mov eax, SEC_TOP_OF_STACK
|
mov eax, SEC_TOP_OF_STACK
|
||||||
mov esp, eax
|
mov esp, eax
|
||||||
@@ -54,8 +52,5 @@ _ModuleEntryPoint PROC PUBLIC
|
|||||||
;
|
;
|
||||||
push eax
|
push eax
|
||||||
push ebp
|
push ebp
|
||||||
call SecCoreStartupWithStack
|
call ASM_PFX(SecCoreStartupWithStack)
|
||||||
|
|
||||||
_ModuleEntryPoint ENDP
|
|
||||||
|
|
||||||
END
|
|
@@ -31,9 +31,7 @@
|
|||||||
SecMain.c
|
SecMain.c
|
||||||
|
|
||||||
[Sources.IA32]
|
[Sources.IA32]
|
||||||
Ia32/SecEntry.asm | MSFT
|
Ia32/SecEntry.nasm
|
||||||
Ia32/SecEntry.asm | INTEL
|
|
||||||
Ia32/SecEntry.S | GCC
|
|
||||||
|
|
||||||
[Sources.X64]
|
[Sources.X64]
|
||||||
X64/SecEntry.asm | MSFT
|
X64/SecEntry.asm | MSFT
|
||||||
|
Reference in New Issue
Block a user