Refine comments of X64 assembly files of MDE BaseLib.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6277 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
xli24
2008-10-28 14:23:36 +00:00
parent 405b567555
commit 2faf4da5f7
15 changed files with 50 additions and 59 deletions

View File

@@ -27,39 +27,39 @@
# VOID
# EFIAPI
# InternalX86DisablePaging64 (
# IN UINT16 Cs, %rdi
# IN UINT64 EntryPoint, %rsi
# IN UINT64 Context1, OPTIONAL %rdx
# IN UINT32 Context2, OPTIONAL %rcx
# IN UINT64 NewStack %r8
# IN UINT16 Cs,
# IN UINT64 EntryPoint,
# IN UINT64 Context1, OPTIONAL
# IN UINT32 Context2, OPTIONAL
# IN UINT64 NewStack
# );
#------------------------------------------------------------------------------
.global ASM_PFX(InternalX86DisablePaging64)
ASM_PFX(InternalX86DisablePaging64):
cli
shl $0x20,%rcx
shl $0x20,%rcx # rcx[32..47] <- Cs
lea L1, %eax
mov %r8d, %esi
or %rax, %rcx
or %rax, %rcx # rcx[0..47] <- Cs:@F
mov %r9d, %edi
mov 0x28(%rsp), %eax
mov 0x28(%rsp), %eax # eax <- New Stack
push %rcx
ret
ret # switch to compatibility mode
L1:
mov %eax,%esp
mov %eax,%esp # set up new stack
mov %cr0,%rax
btr $0x1f,%eax
mov %rax,%cr0
mov %rax,%cr0 # disable paging
mov $0xc0000080,%ecx
rdmsr
and $0xfe,%ah
and $0xfe,%ah # clear LME
wrmsr
mov %cr4,%rax
and $0xdf,%al
and $0xdf,%al # clear PAE
mov %rax,%cr4
push %rdi
push %rsi
callq *%rdx
jmp .
push %rdi # push Context2
push %rsi # push Context1
callq *%rdx # transfer control to EntryPoint
jmp . # no one should get here