VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/MdePkg/Library/BaseLib/LongJump.c

Last change on this file was 99404, checked in by vboxsync, 2 years ago

Devices/EFI/FirmwareNew: Update to edk2-stable202302 and make it build, bugref:4643

  • Property svn:eol-style set to native
File size: 1001 bytes
Line 
1/** @file
2 Long Jump functions.
3
4 Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7**/
8
9#include "BaseLibInternals.h"
10
11/**
12 Restores the CPU context that was saved with SetJump().
13
14 Restores the CPU context from the buffer specified by JumpBuffer. This
15 function never returns to the caller. Instead is resumes execution based on
16 the state of JumpBuffer.
17
18 If JumpBuffer is NULL, then ASSERT().
19 For IPF CPUs, if JumpBuffer is not aligned on a 16-byte boundary, then ASSERT().
20 If Value is 0, then ASSERT().
21
22 @param JumpBuffer A pointer to CPU context buffer.
23 @param Value The value to return when the SetJump() context is
24 restored and must be non-zero.
25
26**/
27VOID
28EFIAPI
29LongJump (
30 IN BASE_LIBRARY_JUMP_BUFFER *JumpBuffer,
31 IN UINTN Value
32 )
33{
34 InternalAssertJumpBuffer (JumpBuffer);
35 ASSERT (Value != 0);
36
37 InternalLongJump (JumpBuffer, Value);
38}
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette