TianoCore EDK2
master
Loading...
Searching...
No Matches
EnablePaging32.c
Go to the documentation of this file.
1
9
#include "
BaseLibInternals.h
"
10
44
__declspec
(naked)
45
VOID
46
EFIAPI
47
InternalX86EnablePaging32
(
48
IN
SWITCH_STACK_ENTRY_POINT
EntryPoint,
49
IN
VOID *Context1 OPTIONAL,
50
IN
VOID *Context2 OPTIONAL,
51
IN
VOID *NewStack
52
)
53
{
54
_asm {
55
push ebp
56
mov ebp, esp
57
mov ebx, EntryPoint
58
mov ecx, Context1
59
mov edx, Context2
60
pushfd
61
pop edi
62
cli
63
mov eax, cr0
64
bts eax, 31
65
mov esp, NewStack
66
mov cr0, eax
67
push edi
68
popfd
69
push edx
70
push ecx
71
call ebx
72
jmp $
73
}
74
}
SWITCH_STACK_ENTRY_POINT
VOID(EFIAPI * SWITCH_STACK_ENTRY_POINT)(IN VOID *Context1 OPTIONAL, IN VOID *Context2 OPTIONAL)
Definition:
BaseLib.h:5019
BaseLibInternals.h
__declspec
__declspec(naked)
Definition:
EnablePaging32.c:44
IN
#define IN
Definition:
Base.h:279
InternalX86EnablePaging32
VOID EFIAPI InternalX86EnablePaging32(IN SWITCH_STACK_ENTRY_POINT EntryPoint, IN VOID *Context1 OPTIONAL, IN VOID *Context2 OPTIONAL, IN VOID *NewStack)
Definition:
Non-existing.c:47
MdePkg
Library
BaseLib
Ia32
EnablePaging32.c
Generated on Fri Nov 15 2024 18:01:17 for TianoCore EDK2 by
1.9.6