secswitchstacks.asm

来自「EFI BIOS是Intel提出的下一代的BIOS标准。这里上传的Edk源代码是」· 汇编 代码 · 共 72 行

ASM
72
字号
      TITLE   SecSwitchStacks.asm: Stack switching routine for Winnt emulation.

;------------------------------------------------------------------------------
; Copyright (c) 2004, 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        
; http://opensource.org/licenses/bsd-license.php                                            
;                                                                                           
; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     
; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             
;
;
;Module Name:
;
;    SecSwitchStacks.asm
;
;Abstract:
;
;    Stack switching routine for Winnt emulation.
;
;------------------------------------------------------------------------------

  .686P
  .XMM
  .MODEL SMALL
  .CODE
  
SecSwitchStacks PROTO C  EntryPoint: DWORD, PeiStartup: DWORD, NewStack: DWORD, NewBsp: DWORD

SecSwitchStacks PROC C   EntryPoint: DWORD, PeiStartup: DWORD, NewStack: DWORD, NewBsp: DWORD

;------------------------------------------------------------------------------
;VOID
;SecSwitchStacks (
;  IN VOID                       *EntryPoint,
;  IN EFI_PEI_STARTUP_DESCRIPTOR *PeiStartup,
;  IN VOID                       *NewStack,
;  IN VOID                       *NewBsp
;  )
;
; Routine Description:
; 
;   Stack switching routine for Winnt emulation.
;
; Arguments:
;
;   EntryPoint - Entry point with new stack.
;   PeiStartup - PEI startup descriptor for new entry point.
;   NewStack   - Pointer to new stack.
;   NewBsp     - Pointer to new BSP.
;  
; Returns:
;
;   None
;
;----------------------------------------------------

  mov    ecx, EntryPoint

  mov    eax, NewStack
  mov    esp, eax

  push   PeiStartup
  call   ecx
  
  ret
  
SecSwitchStacks ENDP

END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?