You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
1.8 KiB

/*
* Copyright 2002-2019 Intel Corporation.
*
* This software and the related documents are Intel copyrighted materials, and your
* use of them is governed by the express license under which they were provided to
* you ("License"). Unless the License provides otherwise, you may not use, modify,
* copy, publish, distribute, disclose or transmit this software or the related
* documents without Intel's prior written permission.
*
* This software and the related documents are provided as is, with no express or
* implied warranties, other than those that are expressly stated in the License.
*/
// <COMPONENT>: atomic
// <FILE-TYPE>: component private header
#ifndef ATOMIC_PRIVATE_IA32_OPS_IMPL_IA32_ASM_HPP
#define ATOMIC_PRIVATE_IA32_OPS_IMPL_IA32_ASM_HPP
extern "C" void ATOMIC_CompareAndSwap8(volatile void *location, const void *oldVal, void *newVal);
extern "C" void ATOMIC_CompareAndSwap16(volatile void *location, const void *oldVal, void *newVal);
extern "C" void ATOMIC_CompareAndSwap32(volatile void *location, const void *oldVal, void *newVal);
extern "C" void ATOMIC_CompareAndSwap64(volatile void *location, const void *oldVal, void *newVal);
extern "C" void ATOMIC_Swap8(volatile void *location, void *oldVal, const void *newVal);
extern "C" void ATOMIC_Swap16(volatile void *location, void *oldVal, const void *newVal);
extern "C" void ATOMIC_Swap32(volatile void *location, void *oldVal, const void *newVal);
extern "C" void ATOMIC_Copy64(volatile const void *from, volatile void *to);
extern "C" void ATOMIC_Increment8(volatile void *location, const void *inc, void *oldVal);
extern "C" void ATOMIC_Increment16(volatile void *location, const void *inc, void *oldVal);
extern "C" void ATOMIC_Increment32(volatile void *location, const void *inc, void *oldVal);
#endif // file guard