+++ /dev/null
-#------------------------------------------------------------------------------\r
-#\r
-# Copyright (c) 2006, Intel Corporation\r
-# All rights reserved. This program and the accompanying materials\r
-# are licensed and made available under the terms and conditions of the BSD License\r
-# which accompanies this distribution. The full text of the license may be found at\r
-# http://opensource.org/licenses/bsd-license.php\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-#\r
-# Module Name:\r
-#\r
-# EnablePaging32.Asm\r
-#\r
-# Abstract:\r
-#\r
-# AsmEnablePaging32 function\r
-#\r
-# Notes:\r
-#\r
-#------------------------------------------------------------------------------\r
-\r
-\r
-\r
- \r
-\r
-#------------------------------------------------------------------------------\r
-# VOID\r
-# EFIAPI\r
-# AsmEnablePaging32 (\r
-# IN SWITCH_STACK_ENTRY_POINT EntryPoint,\r
-# IN VOID *Context1, OPTIONAL\r
-# IN VOID *Context2, OPTIONAL\r
-# IN VOID *NewStack\r
-# );\r
-#------------------------------------------------------------------------------\r
-.global _AsmEnablePaging32\r
-_AsmEnablePaging32: \r
- movl 4(%esp),%ebx\r
- movl 8(%esp),%ecx\r
- movl 12(%esp),%edx\r
- pushfl\r
- popl %edi\r
- cli\r
- movl %cr0, %eax\r
- btsl $31,%eax\r
- movl 16(%esp),%esp\r
- movl %eax, %cr0\r
- pushl %edi\r
- popfl\r
- pushl %edx\r
- pushl %ecx\r
- call *%ebx\r
- jmp .\r
-\r
-\r
-\r