X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=IntelFsp2WrapperPkg%2FLibrary%2FBaseFspWrapperApiLib%2FX64%2FThunk64To32.nasm;h=a6ad6cf48790bb80bdbde881202de4b27918fb99;hp=bcc6d70a7383c068841976bb9f15e3b593aacb02;hb=c45f4c5e759cadb5a95a04cdcc42d09bc83177ca;hpb=0c1ffb9504c398a2d655934c0c871222f72a7d63 diff --git a/IntelFsp2WrapperPkg/Library/BaseFspWrapperApiLib/X64/Thunk64To32.nasm b/IntelFsp2WrapperPkg/Library/BaseFspWrapperApiLib/X64/Thunk64To32.nasm index bcc6d70a73..a6ad6cf487 100644 --- a/IntelFsp2WrapperPkg/Library/BaseFspWrapperApiLib/X64/Thunk64To32.nasm +++ b/IntelFsp2WrapperPkg/Library/BaseFspWrapperApiLib/X64/Thunk64To32.nasm @@ -1,5 +1,5 @@ ; -; Copyright (c) 2016, Intel Corporation. All rights reserved.
+; Copyright (c) 2016 - 2018, 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 @@ -81,7 +81,7 @@ ASM_PFX(AsmExecute32BitCode): ; mov rax, dword 0x10 ; load long mode selector shl rax, 32 - mov r9, ReloadCS ;Assume the ReloadCS is under 4G + lea r9, [ReloadCS] ;Assume the ReloadCS is under 4G or rax, r9 push rax ; @@ -95,7 +95,7 @@ ASM_PFX(AsmExecute32BitCode): ; save the 32-bit function entry and the return address into stack which will be ; retrieve in compatibility mode. ; - mov rax, ReturnBack ;Assume the ReloadCS is under 4G + lea rax, [ReturnBack] ;Assume the ReloadCS is under 4G shl rax, 32 or rax, rcx push rax @@ -110,7 +110,7 @@ ASM_PFX(AsmExecute32BitCode): ; mov rcx, dword 0x8 ; load compatible mode selector shl rcx, 32 - mov rdx, Compatible ; assume address < 4G + lea rdx, [Compatible] ; assume address < 4G or rcx, rdx push rcx retf @@ -208,7 +208,7 @@ ReloadCS: ; pop r9 ; get CS shl r9, 32 ; rcx[32..47] <- Cs - mov rcx, .0 + lea rcx, [.0] or rcx, r9 push rcx retf