Home | History | Annotate | Download | only in Ipf
      1 /// @file
      2 ///   Contains an implementation of InterlockedCompareExchange16 on Itanium-
      3 ///   based architecture.
      4 ///
      5 /// Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
      6 /// Copyright (c) 2015, Linaro Ltd. All rights reserved.<BR>
      7 /// This program and the accompanying materials
      8 /// are licensed and made available under the terms and conditions of the BSD License
      9 /// which accompanies this distribution.  The full text of the license may be found at
     10 /// http://opensource.org/licenses/bsd-license.php.
     11 ///
     12 /// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     13 /// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     14 ///
     15 /// Module Name:  InterlockedCompareExchange16.s
     16 ///
     17 ///
     18 
     19 .auto
     20 .text
     21 
     22 .proc   InternalSyncCompareExchange16
     23 .type   InternalSyncCompareExchange16, @function
     24 InternalSyncCompareExchange16::
     25         zxt2                r33 = r33
     26         mov                 ar.ccv = r33
     27         cmpxchg2.rel        r8  = [r32], r34
     28         mf
     29         br.ret.sptk.many    b0
     30 .endp   InternalSyncCompareExchange16
     31