OSAPI  0.29
Open System API
machine_type_features.h
1 // *****************************************************************************************
2 //
3 // File description:
4 //
5 // Author: Joao Costa
6 // Purpose: Type declarations for CPU Features
7 //
8 // *****************************************************************************************
9 
10 #ifndef OSAPI_MACHINE_CPU_TYPE_FEATURES_H_
11 #define OSAPI_MACHINE_CPU_TYPE_FEATURES_H_
12 
13 
14 
15 // *****************************************************************************************
16 //
17 // Section: Define Constants
18 //
19 // *****************************************************************************************
20 
21 #define OSAPI_MACHINE_CPU_FEATURE_MAX UINT16_MAX
22 
23 // *****************************************************************************************
24 //
25 // Section: Import machine enums
26 //
27 // *****************************************************************************************
28 
29 #define osapi_machine_cpu_feature_X(a, b, c, d) a b,
30 
31 enum osapi_machine_cpu_feature_E {
32  #include "machine/cpu/mappings/table_cpu_features.h"
33 };
34 
35 #undef osapi_machine_cpu_feature_X
36 
37 
38 typedef uint16_t t_cpu_feature_size;
39 
40 
43 {
44  t_cpu_feature_size max;
45  t_cpu_feature_size avail;
46  _Bool feature[ osapi_machine_cpu_feature_max + 1 ];
47 };
48 
50 
51 
52 
53 
54 #endif /* OSAPI_MACHINE_CPU_TYPE_FEATURES_H_ */
osapi_machine_cpu_feature_S::avail
t_cpu_feature_size avail
Number of available CPU features (to speedup library functions)
Definition: machine_type_features.h:45
osapi_machine_cpu_feature_S
Define a type for CPU features.
Definition: machine_type_features.h:42
osapi_machine_cpu_feature_S::feature
_Bool feature[osapi_machine_cpu_feature_max+1]
Is Feature present?
Definition: machine_type_features.h:46
osapi_machine_cpu_feature_S::max
t_cpu_feature_size max
Maximum number of OSAPI supported CPU features (to avoid mismatches between clients and library)
Definition: machine_type_features.h:44