On 10/18/14 20:25, Jordan Justen wrote: > The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert > Ia32/SecEntry.asm to Ia32/SecEntry.nasm > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Jordan Justen <[email protected]> > --- > OvmfPkg/Sec/Ia32/SecEntry.S | 59 > ------------------------ > OvmfPkg/Sec/Ia32/{SecEntry.asm => SecEntry.nasm} | 17 +++---- > OvmfPkg/Sec/SecMain.inf | 6 +-- > 3 files changed, 9 insertions(+), 73 deletions(-) > delete mode 100644 OvmfPkg/Sec/Ia32/SecEntry.S > rename OvmfPkg/Sec/Ia32/{SecEntry.asm => SecEntry.nasm} (82%)
It's probably a good idea to allow git-diff to detect renames (and to format the patch accordingly) when the patch affects OVMF -- the patch we'll probably be applied by you or me, and we both use git as a "frontend" (ie. we can deal with renames while applying). And, rename detection helps with patch review too; the patches are simpler. I'll assume that the MASM files (ie. the conversion input) have not been stale -- hence I don't have to compare the conversion output against the .S files (which are now removed); it should suffice to check the masm <-> nasm changes. I'm assuming this because you regularly build OVMF on Windows too, as far as I understand. > > diff --git a/OvmfPkg/Sec/Ia32/SecEntry.S b/OvmfPkg/Sec/Ia32/SecEntry.S > deleted file mode 100644 > index 0771a87..0000000 > --- a/OvmfPkg/Sec/Ia32/SecEntry.S > +++ /dev/null > @@ -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 > - > diff --git a/OvmfPkg/Sec/Ia32/SecEntry.asm b/OvmfPkg/Sec/Ia32/SecEntry.nasm > similarity index 82% > rename from OvmfPkg/Sec/Ia32/SecEntry.asm > rename to OvmfPkg/Sec/Ia32/SecEntry.nasm > index e9458ad..7fee1c2 100644 > --- a/OvmfPkg/Sec/Ia32/SecEntry.asm > +++ b/OvmfPkg/Sec/Ia32/SecEntry.nasm > @@ -1,4 +1,3 @@ > - TITLE SecEntry.asm > > ;------------------------------------------------------------------------------ > ;* > ;* Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR> > @@ -18,11 +17,9 @@ > > #include <Base.h> > > - .686 > - .model flat,C > - .code > + SECTION .text > > -EXTERN SecCoreStartupWithStack:PROC > +extern ASM_PFX(SecCoreStartupWithStack) > > ; > ; SecCore Entry Point > @@ -35,12 +32,13 @@ EXTERN SecCoreStartupWithStack:PROC > ; > ; @return None This routine does not return > ; > -_ModuleEntryPoint PROC PUBLIC > +global ASM_PFX(_ModuleEntryPoint) > +ASM_PFX(_ModuleEntryPoint): > > ; > ; Load temporary RAM stack based on PCDs > ; > - SEC_TOP_OF_STACK EQU (FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) + \ > + %define SEC_TOP_OF_STACK (FixedPcdGet32 (PcdOvmfSecPeiTempRamBase) + \ > FixedPcdGet32 (PcdOvmfSecPeiTempRamSize)) > mov eax, SEC_TOP_OF_STACK > mov esp, eax > @@ -54,8 +52,5 @@ _ModuleEntryPoint PROC PUBLIC > ; > push eax > push ebp > - call SecCoreStartupWithStack > + call ASM_PFX(SecCoreStartupWithStack) > > -_ModuleEntryPoint ENDP > - > -END > diff --git a/OvmfPkg/Sec/SecMain.inf b/OvmfPkg/Sec/SecMain.inf > index 107f60a..e823796 100644 > --- a/OvmfPkg/Sec/SecMain.inf > +++ b/OvmfPkg/Sec/SecMain.inf > @@ -31,9 +31,9 @@ > SecMain.c > > [Sources.IA32] > - Ia32/SecEntry.asm | MSFT > - Ia32/SecEntry.asm | INTEL > - Ia32/SecEntry.S | GCC > + Ia32/SecEntry.nasm| MSFT > + Ia32/SecEntry.nasm| INTEL > + Ia32/SecEntry.nasm| GCC > > [Sources.X64] > X64/SecEntry.asm | MSFT > With the INF changes suggested by Liming: Reviewed-by: Laszlo Ersek <[email protected]> ------------------------------------------------------------------------------ _______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
