2020-05-05 02:52:26 +02:00
|
|
|
/**
|
|
|
|
* This file has no copyright assigned and is placed in the Public Domain.
|
|
|
|
* This file is part of the Wine project.
|
|
|
|
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _INC_INTRIN
|
|
|
|
#define _INC_INTRIN
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if defined(__i386__) || defined(__x86_64__)
|
2020-08-19 23:22:58 +02:00
|
|
|
static inline void __cpuidex(int info[4], int ax, int cx)
|
|
|
|
{
|
|
|
|
__asm__ ("cpuid" : "=a"(info[0]), "=b" (info[1]), "=c"(info[2]), "=d"(info[3]) : "a"(ax), "c"(cx));
|
|
|
|
}
|
2020-05-05 02:52:26 +02:00
|
|
|
static inline void __cpuid(int info[4], int ax)
|
|
|
|
{
|
2020-08-19 23:22:58 +02:00
|
|
|
return __cpuidex(info, ax, 0);
|
2020-05-05 02:52:26 +02:00
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* _INC_INTRIN */
|