1*0b57cec5SDimitry Andric /*===---- arm64intr.h - ARM64 Windows intrinsics -------------------------------=== 2*0b57cec5SDimitry Andric * 3*0b57cec5SDimitry Andric * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*0b57cec5SDimitry Andric * See https://llvm.org/LICENSE.txt for license information. 5*0b57cec5SDimitry Andric * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*0b57cec5SDimitry Andric * 7*0b57cec5SDimitry Andric *===-----------------------------------------------------------------------=== 8*0b57cec5SDimitry Andric */ 9*0b57cec5SDimitry Andric 10*0b57cec5SDimitry Andric /* Only include this if we're compiling for the windows platform. */ 11*0b57cec5SDimitry Andric #ifndef _MSC_VER 12*0b57cec5SDimitry Andric #include_next <arm64intr.h> 13*0b57cec5SDimitry Andric #else 14*0b57cec5SDimitry Andric 15*0b57cec5SDimitry Andric #ifndef __ARM64INTR_H 16*0b57cec5SDimitry Andric #define __ARM64INTR_H 17*0b57cec5SDimitry Andric 18*0b57cec5SDimitry Andric typedef enum 19*0b57cec5SDimitry Andric { 20*0b57cec5SDimitry Andric _ARM64_BARRIER_SY = 0xF, 21*0b57cec5SDimitry Andric _ARM64_BARRIER_ST = 0xE, 22*0b57cec5SDimitry Andric _ARM64_BARRIER_LD = 0xD, 23*0b57cec5SDimitry Andric _ARM64_BARRIER_ISH = 0xB, 24*0b57cec5SDimitry Andric _ARM64_BARRIER_ISHST = 0xA, 25*0b57cec5SDimitry Andric _ARM64_BARRIER_ISHLD = 0x9, 26*0b57cec5SDimitry Andric _ARM64_BARRIER_NSH = 0x7, 27*0b57cec5SDimitry Andric _ARM64_BARRIER_NSHST = 0x6, 28*0b57cec5SDimitry Andric _ARM64_BARRIER_NSHLD = 0x5, 29*0b57cec5SDimitry Andric _ARM64_BARRIER_OSH = 0x3, 30*0b57cec5SDimitry Andric _ARM64_BARRIER_OSHST = 0x2, 31*0b57cec5SDimitry Andric _ARM64_BARRIER_OSHLD = 0x1 32*0b57cec5SDimitry Andric } _ARM64INTR_BARRIER_TYPE; 33*0b57cec5SDimitry Andric 34*0b57cec5SDimitry Andric #endif /* __ARM64INTR_H */ 35*0b57cec5SDimitry Andric #endif /* _MSC_VER */ 36