1 ;------------------------------------------------------------------------------
3 ; Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
5 ; This program and the accompanying materials are licensed and made available
6 ; under the terms and conditions of the BSD License which accompanies this
7 ; distribution. The full text of the license may be found at
8 ; http://opensource.org/licenses/bsd-license.php.
10 ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 ;------------------------------------------------------------------------------
17 ;------------------------------------------------------------------------------
21 ; IN UINTN Port, // rcx
22 ; IN UINTN Size, // rdx
23 ; IN VOID *Buffer // r8
25 ;------------------------------------------------------------------------------
29 xchg rdi, r8 ; rdi: buffer address; r8: save rdi
31 mov rdi, r8 ; restore rdi
35 ;------------------------------------------------------------------------------
39 ; IN UINTN Port, // rcx
40 ; IN UINTN Size, // rdx
41 ; IN VOID *Buffer // r8
43 ;------------------------------------------------------------------------------
47 xchg rdi, r8 ; rdi: buffer address; r8: save rdi
49 mov rdi, r8 ; restore rdi
53 ;------------------------------------------------------------------------------
57 ; IN UINTN Port, // rcx
58 ; IN UINTN Size, // rdx
59 ; IN VOID *Buffer // r8
61 ;------------------------------------------------------------------------------
65 xchg rdi, r8 ; rdi: buffer address; r8: save rdi
67 mov rdi, r8 ; restore rdi
71 ;------------------------------------------------------------------------------
75 ; IN UINTN Port, // rcx
76 ; IN UINTN Size, // rdx
77 ; IN VOID *Buffer // r8
79 ;------------------------------------------------------------------------------
83 xchg rsi, r8 ; rsi: buffer address; r8: save rsi
85 mov rsi, r8 ; restore rsi
89 ;------------------------------------------------------------------------------
93 ; IN UINTN Port, // rcx
94 ; IN UINTN Size, // rdx
95 ; IN VOID *Buffer // r8
97 ;------------------------------------------------------------------------------
101 xchg rsi, r8 ; rsi: buffer address; r8: save rsi
103 mov rsi, r8 ; restore rsi
107 ;------------------------------------------------------------------------------
111 ; IN UINTN Port, // rcx
112 ; IN UINTN Size, // rdx
113 ; IN VOID *Buffer // r8
115 ;------------------------------------------------------------------------------
119 xchg rsi, r8 ; rsi: buffer address; r8: save rsi
121 mov rsi, r8 ; restore rsi