Moved the MdePkg to OldMdePkg so that new code in MdePkg does not break existing builds. Also updated the SPD and FPD files UiNames
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2616 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,25 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# CpuBreakpoint.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# Implementation of CpuBreakpoint() on x86_64
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
.global _CpuBreakpoint
|
||||
_CpuBreakpoint:
|
||||
int $0x3
|
||||
ret
|
@@ -1,37 +0,0 @@
|
||||
;------------------------------------------------------------------------------ ;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; CpuBreakpoint.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; CpuBreakpoint function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; CpuBreakpoint (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
CpuBreakpoint PROC
|
||||
int 3
|
||||
ret
|
||||
CpuBreakpoint ENDP
|
||||
|
||||
END
|
@@ -1,31 +0,0 @@
|
||||
/** @file
|
||||
CpuBreakpoint function.
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
|
||||
//
|
||||
// Microsoft Visual Studio 7.1 Function Prototypes for I/O Intrinsics
|
||||
//
|
||||
void __debugbreak ();
|
||||
|
||||
#pragma intrinsic(__debugbreak)
|
||||
|
||||
VOID
|
||||
EFIAPI
|
||||
CpuBreakpoint (
|
||||
VOID
|
||||
)
|
||||
{
|
||||
__debugbreak ();
|
||||
}
|
||||
|
@@ -1,35 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# CpuFlushTlb.Asm
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# CpuFlushTlb function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
.global _CpuFlushTlb
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# CpuFlushTlb (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
_CpuFlushTlb:
|
||||
mov %cr3, %rax
|
||||
mov %rax, %cr3
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------ ;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; CpuFlushTlb.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; CpuFlushTlb function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; CpuFlushTlb (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
CpuFlushTlb PROC
|
||||
mov rax, cr3
|
||||
mov cr3, rax
|
||||
ret
|
||||
CpuFlushTlb ENDP
|
||||
|
||||
END
|
@@ -1,60 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# CpuId.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmCpuid function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# AsmCpuid (
|
||||
# IN UINT32 RegisterInEax,
|
||||
# OUT UINT32 *RegisterOutEax OPTIONAL,
|
||||
# OUT UINT32 *RegisterOutEbx OPTIONAL,
|
||||
# OUT UINT32 *RegisterOutEcx OPTIONAL,
|
||||
# OUT UINT32 *RegisterOutEdx OPTIONAL
|
||||
# )
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmCpuid;
|
||||
_AsmCpuid:
|
||||
push %rbx
|
||||
mov %ecx, %eax
|
||||
push %rax # save Index on stack
|
||||
push %rdx
|
||||
cpuid
|
||||
test %r9, %r9
|
||||
jz L1
|
||||
mov %ecx, (%r9)
|
||||
L1:
|
||||
pop %rcx
|
||||
jrcxz L2
|
||||
mov %eax, (%rcx)
|
||||
L2:
|
||||
mov %r8, %rcx
|
||||
jrcxz L3
|
||||
mov %ebx, (%rcx)
|
||||
L3:
|
||||
mov 0x38(%rsp), %rcx
|
||||
jrcxz L4
|
||||
mov %edx, (%rcx)
|
||||
L4:
|
||||
pop %rax # restore Index to rax as return value
|
||||
pop %rbx
|
||||
ret
|
@@ -1,62 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; CpuId.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmCpuid function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; AsmCpuid (
|
||||
; IN UINT32 RegisterInEax,
|
||||
; OUT UINT32 *RegisterOutEax OPTIONAL,
|
||||
; OUT UINT32 *RegisterOutEbx OPTIONAL,
|
||||
; OUT UINT32 *RegisterOutEcx OPTIONAL,
|
||||
; OUT UINT32 *RegisterOutEdx OPTIONAL
|
||||
; )
|
||||
;------------------------------------------------------------------------------
|
||||
AsmCpuid PROC USES rbx
|
||||
mov eax, ecx
|
||||
push rax ; save Index on stack
|
||||
push rdx
|
||||
cpuid
|
||||
test r9, r9
|
||||
jz @F
|
||||
mov [r9], ecx
|
||||
@@:
|
||||
pop rcx
|
||||
jrcxz @F
|
||||
mov [rcx], eax
|
||||
@@:
|
||||
mov rcx, r8
|
||||
jrcxz @F
|
||||
mov [rcx], ebx
|
||||
@@:
|
||||
mov rcx, [rsp + 38h]
|
||||
jrcxz @F
|
||||
mov [rcx], edx
|
||||
@@:
|
||||
pop rax ; restore Index to rax as return value
|
||||
ret
|
||||
AsmCpuid ENDP
|
||||
|
||||
END
|
@@ -1,62 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# CpuIdEx.Asm
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmCpuidEx function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT32
|
||||
# EFIAPI
|
||||
# AsmCpuidEx (
|
||||
# IN UINT32 RegisterInEax,
|
||||
# IN UINT32 RegisterInEcx,
|
||||
# OUT UINT32 *RegisterOutEax OPTIONAL,
|
||||
# OUT UINT32 *RegisterOutEbx OPTIONAL,
|
||||
# OUT UINT32 *RegisterOutEcx OPTIONAL,
|
||||
# OUT UINT32 *RegisterOutEdx OPTIONAL
|
||||
# )
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmCpuidEx
|
||||
_AsmCpuidEx:
|
||||
push %rbx
|
||||
movl %ecx,%eax
|
||||
movl %edx,%ecx
|
||||
push %rax
|
||||
cpuid
|
||||
mov 0x38(%rsp), %r10
|
||||
test %r10, %r10
|
||||
jz L1
|
||||
mov %ecx,(%r10)
|
||||
L1:
|
||||
mov %r8, %rcx
|
||||
jrcxz L2
|
||||
movl %eax,(%rcx)
|
||||
L2:
|
||||
mov %r9, %rcx
|
||||
jrcxz L3
|
||||
mov %ebx, (%rcx)
|
||||
L3:
|
||||
mov 0x40(%rsp), %rcx
|
||||
jrcxz L4
|
||||
mov %edx, (%rcx)
|
||||
L4:
|
||||
pop %rax
|
||||
pop %rbx
|
||||
ret
|
@@ -1,64 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; CpuIdEx.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmCpuidEx function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT32
|
||||
; EFIAPI
|
||||
; AsmCpuidEx (
|
||||
; IN UINT32 RegisterInEax,
|
||||
; IN UINT32 RegisterInEcx,
|
||||
; OUT UINT32 *RegisterOutEax OPTIONAL,
|
||||
; OUT UINT32 *RegisterOutEbx OPTIONAL,
|
||||
; OUT UINT32 *RegisterOutEcx OPTIONAL,
|
||||
; OUT UINT32 *RegisterOutEdx OPTIONAL
|
||||
; )
|
||||
;------------------------------------------------------------------------------
|
||||
AsmCpuidEx PROC USES rbx
|
||||
mov eax, ecx
|
||||
mov ecx, edx
|
||||
push rax ; save Index on stack
|
||||
cpuid
|
||||
mov r10, [rsp + 38h]
|
||||
test r10, r10
|
||||
jz @F
|
||||
mov [r10], ecx
|
||||
@@:
|
||||
mov rcx, r8
|
||||
jrcxz @F
|
||||
mov [rcx], eax
|
||||
@@:
|
||||
mov rcx, r9
|
||||
jrcxz @F
|
||||
mov [rcx], ebx
|
||||
@@:
|
||||
mov rcx, [rsp + 40h]
|
||||
jrcxz @F
|
||||
mov [rcx], edx
|
||||
@@:
|
||||
pop rax ; restore Index to rax as return value
|
||||
ret
|
||||
AsmCpuidEx ENDP
|
||||
|
||||
END
|
@@ -1,34 +0,0 @@
|
||||
#------------------------------------------------------------------------------ ;
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# CpuPause.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# CpuPause function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# CpuPause (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _CpuPause;
|
||||
_CpuPause:
|
||||
pause
|
||||
ret
|
@@ -1,37 +0,0 @@
|
||||
;------------------------------------------------------------------------------ ;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; CpuPause.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; CpuPause function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; CpuPause (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
CpuPause PROC
|
||||
pause
|
||||
ret
|
||||
CpuPause ENDP
|
||||
|
||||
END
|
@@ -1,34 +0,0 @@
|
||||
#------------------------------------------------------------------------------ ;
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# CpuSleep.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# CpuSleep function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# CpuSleep (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _CpuSleep;
|
||||
_CpuSleep:
|
||||
hlt
|
||||
ret
|
@@ -1,37 +0,0 @@
|
||||
;------------------------------------------------------------------------------ ;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; CpuSleep.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; CpuSleep function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; CpuSleep (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
CpuSleep PROC
|
||||
hlt
|
||||
ret
|
||||
CpuSleep ENDP
|
||||
|
||||
END
|
@@ -1,35 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# DisableInterrupts.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# DisableInterrupts function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# DisableInterrupts (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _DisableInterrupts;
|
||||
_DisableInterrupts:
|
||||
cli
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; DisableInterrupts.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; DisableInterrupts function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; DisableInterrupts (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
DisableInterrupts PROC
|
||||
cli
|
||||
ret
|
||||
DisableInterrupts ENDP
|
||||
|
||||
END
|
@@ -1,66 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# DisablePaging64.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmDisablePaging64 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# 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
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
.global _InternalX86DisablePaging64
|
||||
_InternalX86DisablePaging64:
|
||||
cli
|
||||
shl $0x20,%rcx
|
||||
lea (%rip), %eax
|
||||
mov %eax,%ecx
|
||||
push %rcx
|
||||
mov %edx,%ebx
|
||||
mov %r8d,%esi
|
||||
mov %r9d,%edi
|
||||
mov 0x28(%rsp),%eax
|
||||
lret
|
||||
L1:
|
||||
mov %eax,%esp
|
||||
mov %cr0,%rax
|
||||
btr $0x1f,%eax
|
||||
mov %rax,%cr0
|
||||
mov $0xc0000080,%ecx
|
||||
rdmsr
|
||||
and $0xfe,%ah
|
||||
wrmsr
|
||||
mov %cr4,%rax
|
||||
and $0xdf,%al
|
||||
mov %rax,%cr4
|
||||
push %rdi
|
||||
push %rsi
|
||||
callq *%rbx
|
||||
jmp .
|
||||
|
@@ -1,65 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; DisablePaging64.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmDisablePaging64 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; InternalX86DisablePaging64 (
|
||||
; IN UINT16 Cs,
|
||||
; IN UINT32 EntryPoint,
|
||||
; IN UINT32 Context1, OPTIONAL
|
||||
; IN UINT32 Context2, OPTIONAL
|
||||
; IN UINT32 NewStack
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalX86DisablePaging64 PROC
|
||||
cli
|
||||
shl rcx, 32 ; rcx[32..47] <- Cs
|
||||
lea eax, @F
|
||||
mov esi, r8d
|
||||
or rcx, rax ; rcx[0..47] <- Cs:@F
|
||||
mov edi, r9d
|
||||
mov eax, [rsp + 28h] ; eax <- New Stack
|
||||
push rcx
|
||||
retf ; switch to compatibility mode
|
||||
@@:
|
||||
mov esp, eax ; set up new stack
|
||||
mov rax, cr0
|
||||
btr eax, 31
|
||||
mov cr0, rax ; disable paging
|
||||
mov ecx, 0c0000080h
|
||||
rdmsr
|
||||
and ah, NOT 1 ; clear LME
|
||||
wrmsr
|
||||
mov rax, cr4
|
||||
and al, NOT (1 SHL 5) ; clear PAE
|
||||
mov cr4, rax
|
||||
push rdi ; push Context2
|
||||
push rsi ; push Context1
|
||||
call rdx ; transfer control to EntryPoint
|
||||
hlt ; no one should get here
|
||||
InternalX86DisablePaging64 ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# EnableDisableInterrupts.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# EnableDisableInterrupts function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# EnableDisableInterrupts (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _EnableDisableInterrupts;
|
||||
.align 16;
|
||||
_EnableDisableInterrupts:
|
||||
sti
|
||||
cli
|
||||
ret
|
@@ -1,39 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; EnableDisableInterrupts.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; EnableDisableInterrupts function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; EnableDisableInterrupts (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
EnableDisableInterrupts PROC
|
||||
sti
|
||||
cli
|
||||
ret
|
||||
EnableDisableInterrupts ENDP
|
||||
|
||||
END
|
@@ -1,35 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# EnableInterrupts.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# EnableInterrupts function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# EnableInterrupts (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _EnableInterrupts;
|
||||
_EnableInterrupts:
|
||||
sti
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; EnableInterrupts.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; EnableInterrupts function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; EnableInterrupts (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
EnableInterrupts PROC
|
||||
sti
|
||||
ret
|
||||
EnableInterrupts ENDP
|
||||
|
||||
END
|
@@ -1,61 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# EnablePaging64.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmEnablePaging64 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# InternalX86EnablePaging64 (
|
||||
# IN UINT16 Cs, %rdi
|
||||
# IN UINT64 EntryPoint, %rsi
|
||||
# IN UINT64 Context1, OPTIONAL %rdx
|
||||
# IN UINT64 Context2, OPTIONAL %rcx
|
||||
# IN UINT64 NewStack %r8
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalX86EnablePaging64;
|
||||
_InternalX86EnablePaging64:
|
||||
cli
|
||||
pop %rax
|
||||
callq Base
|
||||
Base:
|
||||
addl $(L1-Base),(%rsp)
|
||||
mov %cr4,%rax
|
||||
or $0x20,%al
|
||||
mov %rax,%cr4
|
||||
mov $0xc0000080,%ecx
|
||||
rdmsr
|
||||
or $0x1,%ah
|
||||
wrmsr
|
||||
mov %cr0,%rax
|
||||
bts $0x1f,%eax
|
||||
mov %rax,%cr0
|
||||
lret
|
||||
L1:
|
||||
addr32 mov (%esp),%rbx
|
||||
addr32 mov 0x8(%esp),%rcx
|
||||
addr32 mov 0x10(%esp),%rdx
|
||||
addr32 mov 0x18(%esp),%rsp
|
||||
add $-0x20,%rsp
|
||||
callq *%rbx
|
||||
jmp .
|
@@ -1,64 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; EnablePaging64.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmEnablePaging64 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; InternalX86EnablePaging64 (
|
||||
; IN UINT16 Cs,
|
||||
; IN UINT64 EntryPoint,
|
||||
; IN UINT64 Context1, OPTIONAL
|
||||
; IN UINT64 Context2, OPTIONAL
|
||||
; IN UINT64 NewStack
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalX86EnablePaging64 PROC
|
||||
cli
|
||||
pop rax ; skip the return address
|
||||
call @Base
|
||||
@Base:
|
||||
add dword ptr [rsp], @F - @Base ; offset for far retf, seg is the 1st arg
|
||||
mov rax, cr4 ; mov eax, cr4
|
||||
or al, (1 SHL 5)
|
||||
mov cr4, rax ; enable PAE
|
||||
mov ecx, 0c0000080h
|
||||
rdmsr
|
||||
or ah, 1 ; set LME
|
||||
wrmsr
|
||||
mov rax, cr0 ; mov eax, cr0
|
||||
bts eax, 31
|
||||
mov cr0, rax ; enable paging
|
||||
retf
|
||||
@@: ; long mode starts here
|
||||
mov rbx, [esp]
|
||||
mov rcx, [esp + 8]
|
||||
mov rdx, [esp + 10h]
|
||||
mov rsp, [esp + 18h]
|
||||
add rsp, -20h
|
||||
call rbx
|
||||
hlt ; halt processor if EntryPoint() returned
|
||||
InternalX86EnablePaging64 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# FlushCacheLine.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmFlushCacheLine function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID *
|
||||
# EFIAPI
|
||||
# AsmFlushCacheLine (
|
||||
# IN VOID *LinearAddress
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmFlushCacheLine;
|
||||
_AsmFlushCacheLine:
|
||||
clflush (%rdi)
|
||||
mov %rdi, %rax
|
||||
ret
|
@@ -1,39 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; FlushCacheLine.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmFlushCacheLine function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID *
|
||||
; EFIAPI
|
||||
; AsmFlushCacheLine (
|
||||
; IN VOID *LinearAddress
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmFlushCacheLine PROC
|
||||
clflush [rcx]
|
||||
mov rax, rcx
|
||||
ret
|
||||
AsmFlushCacheLine ENDP
|
||||
|
||||
END
|
@@ -1,35 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# FxRestore.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmFxRestore function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# InternalX86FxRestore (
|
||||
# IN CONST IA32_FX_BUFFER *Buffer
|
||||
# )#
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalX86FxRestore;
|
||||
_InternalX86FxRestore:
|
||||
fxrstor (%rcx)
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; FxRestore.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmFxRestore function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; InternalX86FxRestore (
|
||||
; IN CONST IA32_FX_BUFFER *Buffer
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalX86FxRestore PROC
|
||||
fxrstor [rcx]
|
||||
ret
|
||||
InternalX86FxRestore ENDP
|
||||
|
||||
END
|
@@ -1,35 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# FxSave.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmFxSave function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# InternalX86FxSave (
|
||||
# OUT IA32_FX_BUFFER *Buffer
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalX86FxSave;
|
||||
_InternalX86FxSave:
|
||||
fxsave (%rcx)
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; FxSave.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmFxSave function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; InternalX86FxSave (
|
||||
; OUT IA32_FX_BUFFER *Buffer
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalX86FxSave PROC
|
||||
fxsave [rcx]
|
||||
ret
|
||||
InternalX86FxSave ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# InterlockedCompareExchange32.Asm
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# InterlockedCompareExchange32 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT32
|
||||
# EFIAPI
|
||||
# InterlockedCompareExchange32 (
|
||||
# IN UINT32 *Value,
|
||||
# IN UINT32 CompareValue,
|
||||
# IN UINT32 ExchangeValue
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalSyncCompareExchange32;
|
||||
_InternalSyncCompareExchange32:
|
||||
mov %edx, %eax
|
||||
lock cmpxchg %r8d, (%rcx)
|
||||
ret
|
@@ -1,41 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; InterlockedCompareExchange32.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; InterlockedCompareExchange32 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT32
|
||||
; EFIAPI
|
||||
; InterlockedCompareExchange32 (
|
||||
; IN UINT32 *Value,
|
||||
; IN UINT32 CompareValue,
|
||||
; IN UINT32 ExchangeValue
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalSyncCompareExchange32 PROC
|
||||
mov eax, edx
|
||||
lock cmpxchg [rcx], r8d
|
||||
ret
|
||||
InternalSyncCompareExchange32 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
/** @file
|
||||
InterlockedCompareExchange32 function
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
//
|
||||
// Microsoft Visual Studio 7.1 Function Prototypes for I/O Intrinsics
|
||||
//
|
||||
long _InterlockedCompareExchange(
|
||||
long volatile * Destination,
|
||||
long Exchange,
|
||||
long Comperand
|
||||
);
|
||||
|
||||
#pragma intrinsic(_InterlockedCompareExchange)
|
||||
|
||||
UINT32
|
||||
EFIAPI
|
||||
InternalSyncCompareExchange32 (
|
||||
IN UINT32 *Value,
|
||||
IN UINT32 CompareValue,
|
||||
IN UINT32 ExchangeValue
|
||||
)
|
||||
{
|
||||
return _InterlockedCompareExchange (Value, ExchangeValue, CompareValue);
|
||||
}
|
||||
|
@@ -1,39 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# InterlockedCompareExchange64.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# InterlockedCompareExchange64 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT64
|
||||
# EFIAPI
|
||||
# InterlockedCompareExchange64 (
|
||||
# IN UINT64 *Value,
|
||||
# IN UINT64 CompareValue,
|
||||
# IN UINT64 ExchangeValue
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalSyncCompareExchange64;
|
||||
.align 16;
|
||||
_InternalSyncCompareExchange64:
|
||||
mov %rsi, %rax
|
||||
lock cmpxchg %rdx,(%rdi)
|
||||
ret
|
@@ -1,41 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; InterlockedCompareExchange64.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; InterlockedCompareExchange64 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT64
|
||||
; EFIAPI
|
||||
; InterlockedCompareExchange64 (
|
||||
; IN UINT64 *Value,
|
||||
; IN UINT64 CompareValue,
|
||||
; IN UINT64 ExchangeValue
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalSyncCompareExchange64 PROC
|
||||
mov rax, rdx
|
||||
lock cmpxchg [rcx], r8
|
||||
ret
|
||||
InternalSyncCompareExchange64 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
/** @file
|
||||
InterlockedCompareExchange64 function
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
//
|
||||
// Microsoft Visual Studio 7.1 Function Prototypes for I/O Intrinsics
|
||||
//
|
||||
__int64 _InterlockedCompareExchange64(
|
||||
__int64 volatile * Destination,
|
||||
__int64 Exchange,
|
||||
__int64 Comperand
|
||||
);
|
||||
|
||||
#pragma intrinsic(_InterlockedCompareExchange64)
|
||||
|
||||
UINT64
|
||||
EFIAPI
|
||||
InternalSyncCompareExchange64 (
|
||||
IN UINT64 *Value,
|
||||
IN UINT64 CompareValue,
|
||||
IN UINT64 ExchangeValue
|
||||
)
|
||||
{
|
||||
return _InterlockedCompareExchange64 (Value, ExchangeValue, CompareValue);
|
||||
}
|
||||
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# InterlockedDecrement.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# InterlockedDecrement function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT32
|
||||
# EFIAPI
|
||||
# InterlockedDecrement (
|
||||
# IN UINT32 *Value
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalSyncDecrement;
|
||||
_InternalSyncDecrement:
|
||||
lock decl (%rcx)
|
||||
mov (%rcx), %eax
|
||||
ret
|
@@ -1,39 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; InterlockedDecrement.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; InterlockedDecrement function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT32
|
||||
; EFIAPI
|
||||
; InterlockedDecrement (
|
||||
; IN UINT32 *Value
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalSyncDecrement PROC
|
||||
lock dec dword ptr [rcx]
|
||||
mov eax, [rcx]
|
||||
ret
|
||||
InternalSyncDecrement ENDP
|
||||
|
||||
END
|
@@ -1,32 +0,0 @@
|
||||
/** @file
|
||||
InterlockedDecrement function
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
//
|
||||
// Microsoft Visual Studio 7.1 Function Prototypes for I/O Intrinsics
|
||||
//
|
||||
long _InterlockedDecrement(
|
||||
long * lpAddend
|
||||
);
|
||||
|
||||
#pragma intrinsic(_InterlockedDecrement)
|
||||
|
||||
UINT32
|
||||
EFIAPI
|
||||
InternalSyncDecrement (
|
||||
IN UINT32 *Value
|
||||
)
|
||||
{
|
||||
return _InterlockedDecrement (Value);
|
||||
}
|
||||
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# InterlockedIncrement.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# InterlockedIncrement function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT32
|
||||
# EFIAPI
|
||||
# InterlockedIncrement (
|
||||
# IN UINT32 *Value
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalSyncIncrement;
|
||||
_InternalSyncIncrement:
|
||||
lock incl (%rcx)
|
||||
mov (%rcx), %eax
|
||||
ret
|
@@ -1,39 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; InterlockedIncrement.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; InterlockedIncrement function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT32
|
||||
; EFIAPI
|
||||
; InterlockedIncrement (
|
||||
; IN UINT32 *Value
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalSyncIncrement PROC
|
||||
lock inc dword ptr [rcx]
|
||||
mov eax, [rcx]
|
||||
ret
|
||||
InternalSyncIncrement ENDP
|
||||
|
||||
END
|
@@ -1,32 +0,0 @@
|
||||
/** @file
|
||||
InterLockedIncrement function
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
//
|
||||
// Microsoft Visual Studio 7.1 Function Prototypes for I/O Intrinsics
|
||||
//
|
||||
long _InterlockedIncrement(
|
||||
long * lpAddend
|
||||
);
|
||||
|
||||
#pragma intrinsic(_InterlockedIncrement)
|
||||
|
||||
UINT32
|
||||
EFIAPI
|
||||
InternalSyncIncrement (
|
||||
IN UINT32 *Value
|
||||
)
|
||||
{
|
||||
return _InterlockedIncrement (Value);
|
||||
}
|
||||
|
@@ -1,35 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# Invd.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmInvd function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# AsmInvd (
|
||||
# VOID
|
||||
# )#
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmInvd;
|
||||
_AsmInvd:
|
||||
invd
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; Invd.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmInvd function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; AsmInvd (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmInvd PROC
|
||||
invd
|
||||
ret
|
||||
AsmInvd ENDP
|
||||
|
||||
END
|
@@ -1,42 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# LongJump.Asm
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# Implementation of _LongJump() on x64.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# InternalLongJump (
|
||||
# IN BASE_LIBRARY_JUMP_BUFFER *JumpBuffer,
|
||||
# IN UINTN Value
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalLongJump
|
||||
_InternalLongJump:
|
||||
mov (%rcx), %rbx
|
||||
mov 0x8(%rcx), %rsp
|
||||
mov 0x10(%rcx), %rbp
|
||||
mov 0x18(%rcx), %rdi
|
||||
mov 0x20(%rcx), %rsi
|
||||
mov 0x28(%rcx), %r12
|
||||
mov 0x30(%rcx), %r13
|
||||
mov 0x38(%rcx), %r14
|
||||
mov 0x40(%rcx), %r15
|
||||
mov %rdx, %rax
|
||||
jmp *0x48(%rcx)
|
@@ -1,46 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; LongJump.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; Implementation of _LongJump() on x64.
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; InternalLongJump (
|
||||
; IN BASE_LIBRARY_JUMP_BUFFER *JumpBuffer,
|
||||
; IN UINTN Value
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalLongJump PROC
|
||||
mov rbx, [rcx]
|
||||
mov rsp, [rcx + 8]
|
||||
mov rbp, [rcx + 10h]
|
||||
mov rdi, [rcx + 18h]
|
||||
mov rsi, [rcx + 20h]
|
||||
mov r12, [rcx + 28h]
|
||||
mov r13, [rcx + 30h]
|
||||
mov r14, [rcx + 38h]
|
||||
mov r15, [rcx + 40h]
|
||||
mov rax, rdx ; set return value
|
||||
jmp qword ptr [rcx + 48h]
|
||||
InternalLongJump ENDP
|
||||
|
||||
END
|
@@ -1,41 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# Monitor.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmMonitor function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT64
|
||||
# EFIAPI
|
||||
# AsmMonitor (
|
||||
# IN UINTN Eax,
|
||||
# IN UINTN Ecx,
|
||||
# IN UINTN Edx
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmMonitor;
|
||||
.align 16;
|
||||
_AsmMonitor:
|
||||
mov %ecx,%eax
|
||||
mov %edx,%ecx
|
||||
mov %r8d,%edx
|
||||
monitor
|
||||
ret
|
@@ -1,43 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; Monitor.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmMonitor function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT64
|
||||
; EFIAPI
|
||||
; AsmMonitor (
|
||||
; IN UINTN Eax,
|
||||
; IN UINTN Ecx,
|
||||
; IN UINTN Edx
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmMonitor PROC
|
||||
mov eax, ecx
|
||||
mov ecx, edx
|
||||
mov edx, r8d
|
||||
DB 0fh, 1, 0c8h ; monitor
|
||||
ret
|
||||
AsmMonitor ENDP
|
||||
|
||||
END
|
@@ -1,39 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# Mwait.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmMwait function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT64
|
||||
# EFIAPI
|
||||
# AsmMwait (
|
||||
# IN UINTN Eax,
|
||||
# IN UINTN Ecx
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmMwait;
|
||||
.align 16;
|
||||
_AsmMwait:
|
||||
mov %ecx,%eax
|
||||
mov %edx,%ecx
|
||||
mwait %rax,%rcx
|
||||
ret
|
@@ -1,41 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; Mwait.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmMwait function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT64
|
||||
; EFIAPI
|
||||
; AsmMwait (
|
||||
; IN UINTN Eax,
|
||||
; IN UINTN Ecx
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmMwait PROC
|
||||
mov eax, ecx
|
||||
mov ecx, edx
|
||||
DB 0fh, 1, 0c9h ; mwait
|
||||
ret
|
||||
AsmMwait ENDP
|
||||
|
||||
END
|
@@ -1,110 +0,0 @@
|
||||
/** @file
|
||||
Non-existing BaseLib functions on x64
|
||||
|
||||
Copyright (c) 2006, 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: Non-existing.c
|
||||
|
||||
**/
|
||||
|
||||
#include "../BaseLibInternals.h"
|
||||
|
||||
/**
|
||||
Enables the 32-bit paging mode on the CPU.
|
||||
|
||||
Enables the 32-bit paging mode on the CPU. CR0, CR3, CR4, and the page tables
|
||||
must be properly initialized prior to calling this service. This function
|
||||
assumes the current execution mode is 32-bit protected mode. This function is
|
||||
only available on IA-32. After the 32-bit paging mode is enabled, control is
|
||||
transferred to the function specified by EntryPoint using the new stack
|
||||
specified by NewStack and passing in the parameters specified by Context1 and
|
||||
Context2. Context1 and Context2 are optional and may be NULL. The function
|
||||
EntryPoint must never return.
|
||||
|
||||
There are a number of constraints that must be followed before calling this
|
||||
function:
|
||||
1) Interrupts must be disabled.
|
||||
2) The caller must be in 32-bit protected mode with flat descriptors. This
|
||||
means all descriptors must have a base of 0 and a limit of 4GB.
|
||||
3) CR0 and CR4 must be compatible with 32-bit protected mode with flat
|
||||
descriptors.
|
||||
4) CR3 must point to valid page tables that will be used once the transition
|
||||
is complete, and those page tables must guarantee that the pages for this
|
||||
function and the stack are identity mapped.
|
||||
|
||||
@param EntryPoint A pointer to function to call with the new stack after
|
||||
paging is enabled.
|
||||
@param Context1 A pointer to the context to pass into the EntryPoint
|
||||
function as the first parameter after paging is enabled.
|
||||
@param Context2 A pointer to the context to pass into the EntryPoint
|
||||
function as the second parameter after paging is enabled.
|
||||
@param NewStack A pointer to the new stack to use for the EntryPoint
|
||||
function after paging is enabled.
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
InternalX86EnablePaging32 (
|
||||
IN SWITCH_STACK_ENTRY_POINT EntryPoint,
|
||||
IN VOID *Context1, OPTIONAL
|
||||
IN VOID *Context2, OPTIONAL
|
||||
IN VOID *NewStack
|
||||
)
|
||||
{
|
||||
//
|
||||
// This function cannot work on X64 platform
|
||||
//
|
||||
ASSERT (FALSE);
|
||||
}
|
||||
|
||||
/**
|
||||
Disables the 32-bit paging mode on the CPU.
|
||||
|
||||
Disables the 32-bit paging mode on the CPU and returns to 32-bit protected
|
||||
mode. This function assumes the current execution mode is 32-paged protected
|
||||
mode. This function is only available on IA-32. After the 32-bit paging mode
|
||||
is disabled, control is transferred to the function specified by EntryPoint
|
||||
using the new stack specified by NewStack and passing in the parameters
|
||||
specified by Context1 and Context2. Context1 and Context2 are optional and
|
||||
may be NULL. The function EntryPoint must never return.
|
||||
|
||||
There are a number of constraints that must be followed before calling this
|
||||
function:
|
||||
1) Interrupts must be disabled.
|
||||
2) The caller must be in 32-bit paged mode.
|
||||
3) CR0, CR3, and CR4 must be compatible with 32-bit paged mode.
|
||||
4) CR3 must point to valid page tables that guarantee that the pages for
|
||||
this function and the stack are identity mapped.
|
||||
|
||||
@param EntryPoint A pointer to function to call with the new stack after
|
||||
paging is disabled.
|
||||
@param Context1 A pointer to the context to pass into the EntryPoint
|
||||
function as the first parameter after paging is disabled.
|
||||
@param Context2 A pointer to the context to pass into the EntryPoint
|
||||
function as the second parameter after paging is
|
||||
disabled.
|
||||
@param NewStack A pointer to the new stack to use for the EntryPoint
|
||||
function after paging is disabled.
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
InternalX86DisablePaging32 (
|
||||
IN SWITCH_STACK_ENTRY_POINT EntryPoint,
|
||||
IN VOID *Context1, OPTIONAL
|
||||
IN VOID *Context2, OPTIONAL
|
||||
IN VOID *NewStack
|
||||
)
|
||||
{
|
||||
//
|
||||
// This function cannot work on X64 platform
|
||||
//
|
||||
ASSERT (FALSE);
|
||||
}
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadCr0.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadCr0 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadCr0 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadCr0;
|
||||
.align 16;
|
||||
_AsmReadCr0:
|
||||
mov %cr0, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadCr0.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadCr0 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadCr0 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadCr0 PROC
|
||||
mov rax, cr0
|
||||
ret
|
||||
AsmReadCr0 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadCr2.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadCr2 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadCr2 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadCr2;
|
||||
.align 16;
|
||||
_AsmReadCr2:
|
||||
mov %cr2, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadCr2.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadCr2 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadCr2 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadCr2 PROC
|
||||
mov rax, cr2
|
||||
ret
|
||||
AsmReadCr2 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadCr3.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadCr3 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadCr3 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadCr3;
|
||||
.align 16;
|
||||
_AsmReadCr3:
|
||||
mov %cr3, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadCr3.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadCr3 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadCr3 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadCr3 PROC
|
||||
mov rax, cr3
|
||||
ret
|
||||
AsmReadCr3 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadCr4.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadCr4 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadCr4 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadCr4;
|
||||
.align 16;
|
||||
_AsmReadCr4:
|
||||
mov %cr4, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadCr4.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadCr4 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadCr4 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadCr4 PROC
|
||||
mov rax, cr4
|
||||
ret
|
||||
AsmReadCr4 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadCs.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadCs function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT16
|
||||
# EFIAPI
|
||||
# AsmReadCs (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadCs;
|
||||
.align 16;
|
||||
_AsmReadCs:
|
||||
mov %cs, %eax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadCs.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadCs function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT16
|
||||
; EFIAPI
|
||||
; AsmReadCs (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadCs PROC
|
||||
mov eax, cs
|
||||
ret
|
||||
AsmReadCs ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr0.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr0 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr0 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr0;
|
||||
.align 16;
|
||||
_AsmReadDr0:
|
||||
mov %dr0, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr0.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr0 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr0 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr0 PROC
|
||||
mov rax, dr0
|
||||
ret
|
||||
AsmReadDr0 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr1.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr1 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr1 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr1;
|
||||
.align 16;
|
||||
_AsmReadDr1:
|
||||
mov %dr1, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr1.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr1 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr1 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr1 PROC
|
||||
mov rax, dr1
|
||||
ret
|
||||
AsmReadDr1 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr2.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr2 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr2 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr2;
|
||||
.align 16;
|
||||
_AsmReadDr2:
|
||||
mov %dr2, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr2.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr2 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr2 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr2 PROC
|
||||
mov rax, dr2
|
||||
ret
|
||||
AsmReadDr2 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr3.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr3 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr3 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr3;
|
||||
.align 16;
|
||||
_AsmReadDr3:
|
||||
mov %dr3, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr3.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr3 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr3 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr3 PROC
|
||||
mov rax, dr3
|
||||
ret
|
||||
AsmReadDr3 ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr4.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr4 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr4 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr4;
|
||||
.align 16;
|
||||
_AsmReadDr4:
|
||||
#DB 0fh, 21h, 0e0h
|
||||
mov %dr4, %rax
|
||||
ret
|
@@ -1,42 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr4.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr4 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr4 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr4 PROC
|
||||
;
|
||||
; There's no obvious reason to access this register, since it's aliased to
|
||||
; DR7 when DE=0 or an exception generated when DE=1
|
||||
;
|
||||
DB 0fh, 21h, 0e0h
|
||||
ret
|
||||
AsmReadDr4 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr5.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr5 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr5 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr5;
|
||||
.align 16;
|
||||
_AsmReadDr5:
|
||||
mov %dr5, %rax
|
||||
ret
|
@@ -1,42 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr5.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr5 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr5 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr5 PROC
|
||||
;
|
||||
; There's no obvious reason to access this register, since it's aliased to
|
||||
; DR7 when DE=0 or an exception generated when DE=1
|
||||
;
|
||||
DB 0fh, 21h, 0e8h
|
||||
ret
|
||||
AsmReadDr5 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr6.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr6 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr6 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr6;
|
||||
.align 16;
|
||||
_AsmReadDr6:
|
||||
mov %dr6, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr6.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr6 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr6 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr6 PROC
|
||||
mov rax, dr6
|
||||
ret
|
||||
AsmReadDr6 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDr7.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDr7 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadDr7 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDr7;
|
||||
.align 16;
|
||||
_AsmReadDr7:
|
||||
mov %dr7, %rax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDr7.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDr7 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadDr7 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDr7 PROC
|
||||
mov rax, dr7
|
||||
ret
|
||||
AsmReadDr7 ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadDs.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadDs function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT16
|
||||
# EFIAPI
|
||||
# AsmReadDs (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadDs;
|
||||
.align 16;
|
||||
_AsmReadDs:
|
||||
movl %ds, %eax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadDs.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadDs function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT16
|
||||
; EFIAPI
|
||||
; AsmReadDs (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadDs PROC
|
||||
mov eax, ds
|
||||
ret
|
||||
AsmReadDs ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadEflags.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadEflags function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINTN
|
||||
# EFIAPI
|
||||
# AsmReadEflags (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadEflags;
|
||||
.align 16;
|
||||
_AsmReadEflags:
|
||||
pushfq
|
||||
pop %rax
|
||||
ret
|
@@ -1,39 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadEflags.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadEflags function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINTN
|
||||
; EFIAPI
|
||||
; AsmReadEflags (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadEflags PROC
|
||||
pushfq
|
||||
pop rax
|
||||
ret
|
||||
AsmReadEflags ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadEs.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadEs function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT16
|
||||
# EFIAPI
|
||||
# AsmReadEs (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadEs;
|
||||
.align 16;
|
||||
_AsmReadEs:
|
||||
mov %es, %eax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadEs.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadEs function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT16
|
||||
; EFIAPI
|
||||
; AsmReadEs (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadEs PROC
|
||||
mov eax, es
|
||||
ret
|
||||
AsmReadEs ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadFs.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadFs function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT16
|
||||
# EFIAPI
|
||||
# AsmReadFs (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadFs;
|
||||
.align 16;
|
||||
_AsmReadFs:
|
||||
mov %fs, %eax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadFs.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadFs function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT16
|
||||
; EFIAPI
|
||||
; AsmReadFs (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadFs PROC
|
||||
mov eax, fs
|
||||
ret
|
||||
AsmReadFs ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadGdtr.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadGdtr function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# InternalX86ReadGdtr (
|
||||
# OUT IA32_DESCRIPTOR *Gdtr
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalX86ReadGdtr;
|
||||
.align 16;
|
||||
_InternalX86ReadGdtr:
|
||||
sgdt (%rcx)
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadGdtr.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadGdtr function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; InternalX86ReadGdtr (
|
||||
; OUT IA32_DESCRIPTOR *Gdtr
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalX86ReadGdtr PROC
|
||||
sgdt fword ptr [rcx]
|
||||
ret
|
||||
InternalX86ReadGdtr ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadGs.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadGs function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT16
|
||||
# EFIAPI
|
||||
# AsmReadGs (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadGs;
|
||||
.align 16;
|
||||
_AsmReadGs:
|
||||
mov %gs, %eax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadGs.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadGs function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT16
|
||||
; EFIAPI
|
||||
; AsmReadGs (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadGs PROC
|
||||
mov eax, gs
|
||||
ret
|
||||
AsmReadGs ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadIdtr.AS
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadIdtr function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# VOID
|
||||
# EFIAPI
|
||||
# InternalX86ReadIdtr (
|
||||
# OUT IA32_DESCRIPTOR *Idtr
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _InternalX86ReadIdtr;
|
||||
.align 16;
|
||||
_InternalX86ReadIdtr:
|
||||
sidt (%rcx)
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadIdtr.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadIdtr function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; VOID
|
||||
; EFIAPI
|
||||
; InternalX86ReadIdtr (
|
||||
; OUT IA32_DESCRIPTOR *Idtr
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
InternalX86ReadIdtr PROC
|
||||
sidt fword ptr [rcx]
|
||||
ret
|
||||
InternalX86ReadIdtr ENDP
|
||||
|
||||
END
|
@@ -1,36 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadLdtr.AS
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadLdtr function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT16
|
||||
# EFIAPI
|
||||
# AsmReadLdtr (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadLdtr;
|
||||
.align 16;
|
||||
_AsmReadLdtr:
|
||||
sldt %eax
|
||||
ret
|
@@ -1,38 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadLdtr.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadLdtr function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT16
|
||||
; EFIAPI
|
||||
; AsmReadLdtr (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadLdtr PROC
|
||||
sldt eax
|
||||
ret
|
||||
AsmReadLdtr ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadMm0.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadMm0 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT64
|
||||
# EFIAPI
|
||||
# AsmReadMm0 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadMm0;
|
||||
.align 16;
|
||||
_AsmReadMm0:
|
||||
#DB 48h, 0fh, 7eh, 0c0h
|
||||
movd %mm0, %rax
|
||||
ret
|
@@ -1,41 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadMm0.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadMm0 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT64
|
||||
; EFIAPI
|
||||
; AsmReadMm0 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadMm0 PROC
|
||||
;
|
||||
; 64-bit MASM doesn't support MMX instructions, so use opcode here
|
||||
;
|
||||
DB 48h, 0fh, 7eh, 0c0h
|
||||
ret
|
||||
AsmReadMm0 ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadMm1.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadMm1 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT64
|
||||
# EFIAPI
|
||||
# AsmReadMm1 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadMm1;
|
||||
.align 16;
|
||||
_AsmReadMm1:
|
||||
#DB 48h, 0fh, 7eh, 0c8h
|
||||
movd %mm1, %rax
|
||||
ret
|
@@ -1,41 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadMm1.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadMm1 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT64
|
||||
; EFIAPI
|
||||
; AsmReadMm1 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadMm1 PROC
|
||||
;
|
||||
; 64-bit MASM doesn't support MMX instructions, so use opcode here
|
||||
;
|
||||
DB 48h, 0fh, 7eh, 0c8h
|
||||
ret
|
||||
AsmReadMm1 ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadMm2.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadMm2 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT64
|
||||
# EFIAPI
|
||||
# AsmReadMm2 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadMm2;
|
||||
.align 16;
|
||||
_AsmReadMm2:
|
||||
#DB 48h, 0fh, 7eh, 0d0h
|
||||
movd %mm2, %rax
|
||||
ret
|
@@ -1,41 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadMm2.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadMm2 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT64
|
||||
; EFIAPI
|
||||
; AsmReadMm2 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadMm2 PROC
|
||||
;
|
||||
; 64-bit MASM doesn't support MMX instructions, so use opcode here
|
||||
;
|
||||
DB 48h, 0fh, 7eh, 0d0h
|
||||
ret
|
||||
AsmReadMm2 ENDP
|
||||
|
||||
END
|
@@ -1,37 +0,0 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# Copyright (c) 2006, 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:
|
||||
#
|
||||
# ReadMm3.S
|
||||
#
|
||||
# Abstract:
|
||||
#
|
||||
# AsmReadMm3 function
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# UINT64
|
||||
# EFIAPI
|
||||
# AsmReadMm3 (
|
||||
# VOID
|
||||
# );
|
||||
#------------------------------------------------------------------------------
|
||||
.global _AsmReadMm3;
|
||||
.align 16;
|
||||
_AsmReadMm3:
|
||||
#DB 48h, 0fh, 7eh, 0d8h
|
||||
movd %mm3, %rax
|
||||
ret
|
@@ -1,41 +0,0 @@
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Copyright (c) 2006, 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:
|
||||
;
|
||||
; ReadMm3.Asm
|
||||
;
|
||||
; Abstract:
|
||||
;
|
||||
; AsmReadMm3 function
|
||||
;
|
||||
; Notes:
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
.code
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; UINT64
|
||||
; EFIAPI
|
||||
; AsmReadMm3 (
|
||||
; VOID
|
||||
; );
|
||||
;------------------------------------------------------------------------------
|
||||
AsmReadMm3 PROC
|
||||
;
|
||||
; 64-bit MASM doesn't support MMX instructions, so use opcode here
|
||||
;
|
||||
DB 48h, 0fh, 7eh, 0d8h
|
||||
ret
|
||||
AsmReadMm3 ENDP
|
||||
|
||||
END
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user