MdePkg BaseSynchronizationLib: Convert X64/InterlockedCompareExchange16.asm to NASM
The BaseTools/Scripts/ConvertMasmToNasm.py script was used to convert X64/InterlockedCompareExchange16.asm to X64/InterlockedCompareExchange16.nasm Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
		
				
					committed by
					
						
						Liming Gao
					
				
			
			
				
	
			
			
			
						parent
						
							ad00b0f290
						
					
				
				
					commit
					a04618e68e
				
			@@ -64,6 +64,7 @@
 | 
			
		||||
  X64/InterlockedCompareExchange64.asm | INTEL
 | 
			
		||||
  X64/InterlockedCompareExchange32.nasm| INTEL
 | 
			
		||||
  X64/InterlockedCompareExchange32.asm | INTEL
 | 
			
		||||
  X64/InterlockedCompareExchange16.nasm| INTEL
 | 
			
		||||
  X64/InterlockedCompareExchange16.asm | INTEL
 | 
			
		||||
  
 | 
			
		||||
  X64/InterlockedDecrement.c | MSFT 
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,42 @@
 | 
			
		||||
;------------------------------------------------------------------------------
 | 
			
		||||
;
 | 
			
		||||
; Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>
 | 
			
		||||
; Copyright (c) 2015, Linaro Ltd. All rights reserved.<BR>
 | 
			
		||||
; 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:
 | 
			
		||||
;
 | 
			
		||||
;   InterlockedCompareExchange16.Asm
 | 
			
		||||
;
 | 
			
		||||
; Abstract:
 | 
			
		||||
;
 | 
			
		||||
;   InterlockedCompareExchange16 function
 | 
			
		||||
;
 | 
			
		||||
; Notes:
 | 
			
		||||
;
 | 
			
		||||
;------------------------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
    DEFAULT REL
 | 
			
		||||
    SECTION .text
 | 
			
		||||
 | 
			
		||||
;------------------------------------------------------------------------------
 | 
			
		||||
; UINT16
 | 
			
		||||
; EFIAPI
 | 
			
		||||
; InterlockedCompareExchange16 (
 | 
			
		||||
;   IN      UINT16                    *Value,
 | 
			
		||||
;   IN      UINT16                    CompareValue,
 | 
			
		||||
;   IN      UINT16                    ExchangeValue
 | 
			
		||||
;   );
 | 
			
		||||
;------------------------------------------------------------------------------
 | 
			
		||||
global ASM_PFX(InternalSyncCompareExchange16)
 | 
			
		||||
ASM_PFX(InternalSyncCompareExchange16):
 | 
			
		||||
    mov     ax, dx
 | 
			
		||||
    lock    cmpxchg [rcx], r8w
 | 
			
		||||
    ret
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user