1 /*===--------------- usermsrintrin.h - USERMSR intrinsics -----------------===
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-exception
7 *===-----------------------------------------------------------------------===
9 #ifndef __X86GPRINTRIN_H
10 #error "Never use <usermsrintrin.h> directly; include <x86gprintrin.h> instead."
11 #endif // __X86GPRINTRIN_H
13 #ifndef __USERMSRINTRIN_H
14 #define __USERMSRINTRIN_H
17 static __inline__
unsigned long long
18 __attribute__((__always_inline__
, __nodebug__
, __target__("usermsr")))
19 _urdmsr(unsigned long long __A
) {
20 return __builtin_ia32_urdmsr(__A
);
23 static __inline__
void
24 __attribute__((__always_inline__
, __nodebug__
, __target__("usermsr")))
25 _uwrmsr(unsigned long long __A
, unsigned long long __B
) {
26 return __builtin_ia32_uwrmsr(__A
, __B
);
30 #endif // __USERMSRINTRIN_H