From 529fd9aeb426eac63cb04dbbc98e5cf792dcfdde Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Fri, 31 Oct 2014 20:54:16 +0000 Subject: [PATCH] OvmfPkg LoadLinuxLib: Convert Ia32/JumpToKernel.asm to NASM The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert Ia32/JumpToKernel.asm to Ia32/JumpToKernel.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen Reviewed-by: Laszlo Ersek git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16287 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Library/LoadLinuxLib/Ia32/JumpToKernel.S | 46 ------------------- .../{JumpToKernel.asm => JumpToKernel.nasm} | 19 +++----- OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf | 3 +- 3 files changed, 8 insertions(+), 60 deletions(-) delete mode 100644 OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.S rename OvmfPkg/Library/LoadLinuxLib/Ia32/{JumpToKernel.asm => JumpToKernel.nasm} (85%) diff --git a/OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.S b/OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.S deleted file mode 100644 index f7440f74c4..0000000000 --- a/OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.S +++ /dev/null @@ -1,46 +0,0 @@ -#------------------------------------------------------------------------------ -# -# Copyright (c) 2006 - 2013, 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. -# -#------------------------------------------------------------------------------ - -ASM_GLOBAL ASM_PFX(JumpToKernel) -ASM_GLOBAL ASM_PFX(JumpToUefiKernel) - -#------------------------------------------------------------------------------ -# VOID -# EFIAPI -# JumpToKernel ( -# VOID *KernelStart, -# VOID *KernelBootParams -# ); -#------------------------------------------------------------------------------ -ASM_PFX(JumpToKernel): - movl 0x8(%esp), %esi - calll 0x4(%esp) - ret - -#------------------------------------------------------------------------------ -# VOID -# EFIAPI -# JumpToUefiKernel ( -# EFI_HANDLE ImageHandle, -# EFI_SYSTEM_TABLE *SystemTable, -# VOID *KernelBootParams, -# VOID *KernelStart -# ); -#------------------------------------------------------------------------------ -ASM_PFX(JumpToUefiKernel): - movl 0xc(%esp), %eax - movl 0x264(%eax), %eax - addl 0x10(%esp), %eax - jmp %eax - diff --git a/OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.asm b/OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.nasm similarity index 85% rename from OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.asm rename to OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.nasm index 21d0c4e724..fcb686c644 100644 --- a/OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.asm +++ b/OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.nasm @@ -12,9 +12,7 @@ ; ;------------------------------------------------------------------------------ - .586p - .model flat,C - .code + SECTION .text ;------------------------------------------------------------------------------ ; VOID @@ -24,14 +22,13 @@ ; VOID *KernelBootParams ; ); ;------------------------------------------------------------------------------ -JumpToKernel PROC +global ASM_PFX(JumpToKernel) +ASM_PFX(JumpToKernel): mov esi, [esp + 8] - call DWORD PTR [esp + 4] + call DWORD [esp + 4] ret -JumpToKernel ENDP - ;------------------------------------------------------------------------------ ; VOID ; EFIAPI @@ -42,13 +39,11 @@ JumpToKernel ENDP ; VOID *KernelStart ; ); ;------------------------------------------------------------------------------ -JumpToUefiKernel PROC +global ASM_PFX(JumpToUefiKernel) +ASM_PFX(JumpToUefiKernel): mov eax, [esp + 12] - mov eax, [eax + 264h] + mov eax, [eax + 0x264] add eax, [esp + 16] jmp eax -JumpToUefiKernel ENDP - -END diff --git a/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf b/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf index b8f987c477..0d98c26f0b 100644 --- a/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf +++ b/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf @@ -31,8 +31,7 @@ LinuxGdt.c [Sources.IA32] - Ia32/JumpToKernel.asm - Ia32/JumpToKernel.S + Ia32/JumpToKernel.nasm [Sources.X64] X64/JumpToKernel.asm