1 #ifndef __MONO_UTILS_HWCAP_S390X_H__
2 #define __MONO_UTILS_HWCAP_S390X_H__
4 #include "mono/utils/mono-hwcap.h"
8 char n3:1; // N3 instructions present
9 char zArch:1; // z/Architecture mode installed
10 char zAct:1; // z/Architecture mode active
11 char date:1; // DAT enhancement facility
12 char idte1:1; // IDTE present (PST)
13 char idte2:1; // IDTE present (REG)
14 char asnlx:1; // ASN and LX reuse facility
15 char stfle:1; // STFLE installed
16 char zDATe:1; // Enhanced DAT in z mode
17 char srstat:1; // Sense running status facility
18 char cSSKE:1; // Conditional SSKE facility
19 char topo:1; // Configuration topology facility
20 char rv1:1; // Reserved
21 char xTrans2:1; // Extended translation facility 2
22 char msgSec:1; // Message security facility
23 char longDsp:1; // Long displacement facility
24 char hiPerfLD:1; // High performance long displacement facility
25 char hfpMAS:1; // HFP multiply-and-add/subtrace facility
26 char xImm:1; // Extended immediate facility
27 char xTrans3:1; // Extended translation facility 3
28 char hfpUnX:1; // HFP unnormalized extension facility
29 char etf2:1; // ETF2-enhancement facility
30 char stckf:1; // Store-clock-fast facility
31 char parse:1; // Parsing enhancement facility
32 char mvcos:1; // MVCOS facility
33 char todSteer:1; // TOD-clock steering facility
34 char etf3:1; // ETF3-enhancement facility
35 char xCPUtm:1; // Extract CPU time facility
36 char csst:1; // Compare-swap-and-store facility
37 char csst2:1; // Compare-swap-and-store facility 2
38 char giX:1; // General instructions extension facility
39 char exX:1; // Execute extensions facility
40 char em:1; // Enhanced monitor
41 char rv2:1; // Reserved
42 char spp:1; // Set program parameters
43 char fps:1; // Floating point support enhancement
44 char dfp:1; // Decimal floating point facility
45 char hiDFP:1; // High Performance DFP facility
46 char pfpo:1; // PFPO instruction facility
47 char doclpkia:1; // DO/Fast BCR/CL/PK/IA
48 char rv3:1; // Reserved
49 char cmpsce:1; // CMPSC enhancement
50 char dfpzc:1; // DFP zoned-conversion
51 char eh:1; // Execution hint
52 char lt:1; // Load and trap
53 char mi:1; // Miscellaneous instruction enhancements
54 char pa:1; // Processor assist
55 char cx:1; // Constrained transactional execution
56 char ltlb:1; // Local TLB clearing
57 char ia2:1; // Interlocked access 2
58 char rv4:1; // Reserved;
59 char rv5:1; // Reserved;
60 char rv6:1; // Reserved;
61 char rv7:1; // Reserved;
62 char rv8:1; // Reserved;
63 char rv9:1; // Reserved;
64 char rva:1; // Reserved;
65 char rvb:1; // Reserved;
66 char rvc:1; // Reserved;
67 char rvd:1; // Reserved;
68 char rve:1; // Reserved;
69 char rvf:1; // Reserved;
70 char rvg:1; // Reserved;
71 char rb:1; // RRB multiple
72 char cmc:1; // CPU measurement counter
73 char cms:1; // CPU measurement sampling
74 char rvh:4; // Reserved
75 char tx:1; // Transactional execution
76 char rvi:1; // Reserved
77 char axsi:1; // Access exception/store indication
78 char m3:1; // Message security extension 3
79 char m4:1; // Message security extension 4
80 char ed2:1; // Enhanced DAT 2
81 int64_t end[0]; // End on a double word
82 } __attribute__((aligned(8))) facilityList_t;
84 extern facilityList_t facs;
86 #endif /* __MONO_UTILS_HWCAP_S390X_H__ */