26 lines · plain
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include <clc/atomic/clc_atomic_flag_clear.h>10#include <clc/atomic/clc_atomic_store.h>11 12#define __CLC_ATOMIC_FLAG_FALSE 013 14#define __CLC_DEFINE_ATOMIC_FLAG_CLEAR(ADDRSPACE) \15 _CLC_OVERLOAD _CLC_DEF void __clc_atomic_flag_clear( \16 ADDRSPACE int *Ptr, int MemoryOrder, int MemoryScope) { \17 __clc_atomic_store(Ptr, __CLC_ATOMIC_FLAG_FALSE, MemoryOrder, \18 MemoryScope); \19 }20 21__CLC_DEFINE_ATOMIC_FLAG_CLEAR(global)22__CLC_DEFINE_ATOMIC_FLAG_CLEAR(local)23#if _CLC_GENERIC_AS_SUPPORTED24__CLC_DEFINE_ATOMIC_FLAG_CLEAR()25#endif26