mirror of https://github.com/acidanthera/audk.git
UefiCpuPkg/CpuDxe: Fix boot error
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3084 When DXE drivers are dispatched above 4GB memory and the system is already in 64bit mode, the address setCodeSelectorLongJump in stack will be override by parameter. so change to use 64bit address and jump to qword address. Signed-off-by: Guo Dong <guo.dong@intel.com> Reviewed-by: Ray Ni <ray.ni@intel.com> Reviewed-by: Eric Dong <eric.dong@intel.com>
This commit is contained in:
parent
8e4cb8fbce
commit
cee5b0441a
|
@ -23,8 +23,8 @@ ASM_PFX(SetCodeSelector):
|
||||||
sub rsp, 0x10
|
sub rsp, 0x10
|
||||||
lea rax, [setCodeSelectorLongJump]
|
lea rax, [setCodeSelectorLongJump]
|
||||||
mov [rsp], rax
|
mov [rsp], rax
|
||||||
mov [rsp+4], cx
|
mov [rsp+8], cx
|
||||||
jmp dword far [rsp]
|
jmp qword far [rsp]
|
||||||
setCodeSelectorLongJump:
|
setCodeSelectorLongJump:
|
||||||
add rsp, 0x10
|
add rsp, 0x10
|
||||||
ret
|
ret
|
||||||
|
|
Loading…
Reference in New Issue