1341825Sdim/*===---- clflushoptintrin.h - CLFLUSHOPT intrinsic ------------------------===
2303233Sdim *
3353358Sdim * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4353358Sdim * See https://llvm.org/LICENSE.txt for license information.
5353358Sdim * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6303233Sdim *
7303233Sdim *===-----------------------------------------------------------------------===
8303233Sdim */
9303233Sdim
10303233Sdim#ifndef __IMMINTRIN_H
11303233Sdim#error "Never use <clflushoptintrin.h> directly; include <immintrin.h> instead."
12303233Sdim#endif
13303233Sdim
14303233Sdim#ifndef __CLFLUSHOPTINTRIN_H
15303233Sdim#define __CLFLUSHOPTINTRIN_H
16303233Sdim
17303233Sdim/* Define the default attributes for the functions in this file. */
18303233Sdim#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__,  __target__("clflushopt")))
19303233Sdim
20303233Sdimstatic __inline__ void __DEFAULT_FN_ATTRS
21327952Sdim_mm_clflushopt(void const * __m) {
22303233Sdim  __builtin_ia32_clflushopt(__m);
23303233Sdim}
24303233Sdim
25303233Sdim#undef __DEFAULT_FN_ATTRS
26303233Sdim
27303233Sdim#endif
28