]> git.proxmox.com Git - mirror_edk2.git/blame_incremental - MdePkg/Library/BaseLib/Ipf/InterlockedCompareExchange64.s
Changed SwitchStack() to _SwitchStack()
[mirror_edk2.git] / MdePkg / Library / BaseLib / Ipf / InterlockedCompareExchange64.s
... / ...
CommitLineData
1/// @file\r
2/// Contains an implementation of InterlockedCompareExchange64 on Itanium-\r
3/// based architecture.\r
4///\r
5/// Copyright (c) 2006, Intel Corporation\r
6/// All rights reserved. This program and the accompanying materials\r
7/// are licensed and made available under the terms and conditions of the BSD License\r
8/// which accompanies this distribution. The full text of the license may be found at\r
9/// http://opensource.org/licenses/bsd-license.php\r
10///\r
11/// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12/// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13///\r
14/// Module Name: InterlockedCompareExchange64.s\r
15///\r
16///\r
17\r
18.auto\r
19.text\r
20\r
21.proc InternalSyncCompareExchange64\r
22.type InternalSyncCompareExchange64, @function\r
23InternalSyncCompareExchange64::\r
24 mov ar.ccv = r33\r
25 cmpxchg8.rel r8 = [r64], r34\r
26 mf\r
27 br.ret.sptk.many b0\r
28.endp InternalSyncCompareExchange64