authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2022-07-28 13:47:29-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-07-28 23:22:44-07:00
logb5861193e072ba6780730a559f2b879378b8587f
treeef485670aadd05b6716bc8f5fc14737976552705
parente6b3eae490e4d0c427034c3530be4ed5a74e2253

std: rename std.Target.systemz to .s390x


5 files changed, 628 insertions(+), 628 deletions(-)

CMakeLists.txt+1-1
...@@ -670,7 +670,7 @@ set(ZIG_STAGE2_SOURCES...@@ -670,7 +670,7 @@ set(ZIG_STAGE2_SOURCES
670 "${CMAKE_SOURCE_DIR}/lib/std/target/powerpc.zig"670 "${CMAKE_SOURCE_DIR}/lib/std/target/powerpc.zig"
671 "${CMAKE_SOURCE_DIR}/lib/std/target/riscv.zig"671 "${CMAKE_SOURCE_DIR}/lib/std/target/riscv.zig"
672 "${CMAKE_SOURCE_DIR}/lib/std/target/sparc.zig"672 "${CMAKE_SOURCE_DIR}/lib/std/target/sparc.zig"
673 "${CMAKE_SOURCE_DIR}/lib/std/target/systemz.zig"673 "${CMAKE_SOURCE_DIR}/lib/std/target/s390x.zig"
674 "${CMAKE_SOURCE_DIR}/lib/std/target/wasm.zig"674 "${CMAKE_SOURCE_DIR}/lib/std/target/wasm.zig"
675 "${CMAKE_SOURCE_DIR}/lib/std/target/x86.zig"675 "${CMAKE_SOURCE_DIR}/lib/std/target/x86.zig"
676 "${CMAKE_SOURCE_DIR}/lib/std/Thread.zig"676 "${CMAKE_SOURCE_DIR}/lib/std/Thread.zig"
lib/std/target.zig+5-5
...@@ -453,7 +453,7 @@ pub const Target = struct {...@@ -453,7 +453,7 @@ pub const Target = struct {
453 pub const riscv = @import("target/riscv.zig");453 pub const riscv = @import("target/riscv.zig");
454 pub const sparc = @import("target/sparc.zig");454 pub const sparc = @import("target/sparc.zig");
455 pub const spirv = @import("target/spirv.zig");455 pub const spirv = @import("target/spirv.zig");
456 pub const systemz = @import("target/systemz.zig");456 pub const s390x = @import("target/s390x.zig");
457 pub const ve = @import("target/ve.zig");457 pub const ve = @import("target/ve.zig");
458 pub const wasm = @import("target/wasm.zig");458 pub const wasm = @import("target/wasm.zig");
459 pub const x86 = @import("target/x86.zig");459 pub const x86 = @import("target/x86.zig");
...@@ -1178,7 +1178,7 @@ pub const Target = struct {...@@ -1178,7 +1178,7 @@ pub const Target = struct {
1178 .amdgcn => "amdgpu",1178 .amdgcn => "amdgpu",
1179 .riscv32, .riscv64 => "riscv",1179 .riscv32, .riscv64 => "riscv",
1180 .sparc, .sparc64, .sparcel => "sparc",1180 .sparc, .sparc64, .sparcel => "sparc",
1181 .s390x => "systemz",1181 .s390x => "s390x",
1182 .i386, .x86_64 => "x86",1182 .i386, .x86_64 => "x86",
1183 .nvptx, .nvptx64 => "nvptx",1183 .nvptx, .nvptx64 => "nvptx",
1184 .wasm32, .wasm64 => "wasm",1184 .wasm32, .wasm64 => "wasm",
...@@ -1202,7 +1202,7 @@ pub const Target = struct {...@@ -1202,7 +1202,7 @@ pub const Target = struct {
1202 .riscv32, .riscv64 => &riscv.all_features,1202 .riscv32, .riscv64 => &riscv.all_features,
1203 .sparc, .sparc64, .sparcel => &sparc.all_features,1203 .sparc, .sparc64, .sparcel => &sparc.all_features,
1204 .spirv32, .spirv64 => &spirv.all_features,1204 .spirv32, .spirv64 => &spirv.all_features,
1205 .s390x => &systemz.all_features,1205 .s390x => &s390x.all_features,
1206 .i386, .x86_64 => &x86.all_features,1206 .i386, .x86_64 => &x86.all_features,
1207 .nvptx, .nvptx64 => &nvptx.all_features,1207 .nvptx, .nvptx64 => &nvptx.all_features,
1208 .ve => &ve.all_features,1208 .ve => &ve.all_features,
...@@ -1226,7 +1226,7 @@ pub const Target = struct {...@@ -1226,7 +1226,7 @@ pub const Target = struct {
1226 .amdgcn => comptime allCpusFromDecls(amdgpu.cpu),1226 .amdgcn => comptime allCpusFromDecls(amdgpu.cpu),
1227 .riscv32, .riscv64 => comptime allCpusFromDecls(riscv.cpu),1227 .riscv32, .riscv64 => comptime allCpusFromDecls(riscv.cpu),
1228 .sparc, .sparc64, .sparcel => comptime allCpusFromDecls(sparc.cpu),1228 .sparc, .sparc64, .sparcel => comptime allCpusFromDecls(sparc.cpu),
1229 .s390x => comptime allCpusFromDecls(systemz.cpu),1229 .s390x => comptime allCpusFromDecls(s390x.cpu),
1230 .i386, .x86_64 => comptime allCpusFromDecls(x86.cpu),1230 .i386, .x86_64 => comptime allCpusFromDecls(x86.cpu),
1231 .nvptx, .nvptx64 => comptime allCpusFromDecls(nvptx.cpu),1231 .nvptx, .nvptx64 => comptime allCpusFromDecls(nvptx.cpu),
1232 .ve => comptime allCpusFromDecls(ve.cpu),1232 .ve => comptime allCpusFromDecls(ve.cpu),
...@@ -1287,7 +1287,7 @@ pub const Target = struct {...@@ -1287,7 +1287,7 @@ pub const Target = struct {
1287 .riscv64 => &riscv.cpu.generic_rv64,1287 .riscv64 => &riscv.cpu.generic_rv64,
1288 .sparc, .sparcel => &sparc.cpu.generic,1288 .sparc, .sparcel => &sparc.cpu.generic,
1289 .sparc64 => &sparc.cpu.v9, // 64-bit SPARC needs v9 as the baseline1289 .sparc64 => &sparc.cpu.v9, // 64-bit SPARC needs v9 as the baseline
1290 .s390x => &systemz.cpu.generic,1290 .s390x => &s390x.cpu.generic,
1291 .i386 => &x86.cpu.i386,1291 .i386 => &x86.cpu.i386,
1292 .x86_64 => &x86.cpu.x86_64,1292 .x86_64 => &x86.cpu.x86_64,
1293 .nvptx, .nvptx64 => &nvptx.cpu.sm_20,1293 .nvptx, .nvptx64 => &nvptx.cpu.sm_20,
lib/std/target/s390x.zig created+621
...@@ -0,0 +1,621 @@
1//! This file is auto-generated by tools/update_cpu_features.zig.
2
3const std = @import("../std.zig");
4const CpuFeature = std.Target.Cpu.Feature;
5const CpuModel = std.Target.Cpu.Model;
6
7pub const Feature = enum {
8 bear_enhancement,
9 deflate_conversion,
10 dfp_packed_conversion,
11 dfp_zoned_conversion,
12 distinct_ops,
13 enhanced_dat_2,
14 enhanced_sort,
15 execution_hint,
16 fast_serialization,
17 fp_extension,
18 guarded_storage,
19 high_word,
20 insert_reference_bits_multiple,
21 interlocked_access1,
22 load_and_trap,
23 load_and_zero_rightmost_byte,
24 load_store_on_cond,
25 load_store_on_cond_2,
26 message_security_assist_extension3,
27 message_security_assist_extension4,
28 message_security_assist_extension5,
29 message_security_assist_extension7,
30 message_security_assist_extension8,
31 message_security_assist_extension9,
32 miscellaneous_extensions,
33 miscellaneous_extensions_2,
34 miscellaneous_extensions_3,
35 nnp_assist,
36 population_count,
37 processor_activity_instrumentation,
38 processor_assist,
39 reset_dat_protection,
40 reset_reference_bits_multiple,
41 soft_float,
42 transactional_execution,
43 vector,
44 vector_enhancements_1,
45 vector_enhancements_2,
46 vector_packed_decimal,
47 vector_packed_decimal_enhancement,
48 vector_packed_decimal_enhancement_2,
49};
50
51pub const featureSet = CpuFeature.feature_set_fns(Feature).featureSet;
52pub const featureSetHas = CpuFeature.feature_set_fns(Feature).featureSetHas;
53pub const featureSetHasAny = CpuFeature.feature_set_fns(Feature).featureSetHasAny;
54pub const featureSetHasAll = CpuFeature.feature_set_fns(Feature).featureSetHasAll;
55
56pub const all_features = blk: {
57 const len = @typeInfo(Feature).Enum.fields.len;
58 std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
59 var result: [len]CpuFeature = undefined;
60 result[@enumToInt(Feature.bear_enhancement)] = .{
61 .llvm_name = "bear-enhancement",
62 .description = "Assume that the BEAR-enhancement facility is installed",
63 .dependencies = featureSet(&[_]Feature{}),
64 };
65 result[@enumToInt(Feature.deflate_conversion)] = .{
66 .llvm_name = "deflate-conversion",
67 .description = "Assume that the deflate-conversion facility is installed",
68 .dependencies = featureSet(&[_]Feature{}),
69 };
70 result[@enumToInt(Feature.dfp_packed_conversion)] = .{
71 .llvm_name = "dfp-packed-conversion",
72 .description = "Assume that the DFP packed-conversion facility is installed",
73 .dependencies = featureSet(&[_]Feature{}),
74 };
75 result[@enumToInt(Feature.dfp_zoned_conversion)] = .{
76 .llvm_name = "dfp-zoned-conversion",
77 .description = "Assume that the DFP zoned-conversion facility is installed",
78 .dependencies = featureSet(&[_]Feature{}),
79 };
80 result[@enumToInt(Feature.distinct_ops)] = .{
81 .llvm_name = "distinct-ops",
82 .description = "Assume that the distinct-operands facility is installed",
83 .dependencies = featureSet(&[_]Feature{}),
84 };
85 result[@enumToInt(Feature.enhanced_dat_2)] = .{
86 .llvm_name = "enhanced-dat-2",
87 .description = "Assume that the enhanced-DAT facility 2 is installed",
88 .dependencies = featureSet(&[_]Feature{}),
89 };
90 result[@enumToInt(Feature.enhanced_sort)] = .{
91 .llvm_name = "enhanced-sort",
92 .description = "Assume that the enhanced-sort facility is installed",
93 .dependencies = featureSet(&[_]Feature{}),
94 };
95 result[@enumToInt(Feature.execution_hint)] = .{
96 .llvm_name = "execution-hint",
97 .description = "Assume that the execution-hint facility is installed",
98 .dependencies = featureSet(&[_]Feature{}),
99 };
100 result[@enumToInt(Feature.fast_serialization)] = .{
101 .llvm_name = "fast-serialization",
102 .description = "Assume that the fast-serialization facility is installed",
103 .dependencies = featureSet(&[_]Feature{}),
104 };
105 result[@enumToInt(Feature.fp_extension)] = .{
106 .llvm_name = "fp-extension",
107 .description = "Assume that the floating-point extension facility is installed",
108 .dependencies = featureSet(&[_]Feature{}),
109 };
110 result[@enumToInt(Feature.guarded_storage)] = .{
111 .llvm_name = "guarded-storage",
112 .description = "Assume that the guarded-storage facility is installed",
113 .dependencies = featureSet(&[_]Feature{}),
114 };
115 result[@enumToInt(Feature.high_word)] = .{
116 .llvm_name = "high-word",
117 .description = "Assume that the high-word facility is installed",
118 .dependencies = featureSet(&[_]Feature{}),
119 };
120 result[@enumToInt(Feature.insert_reference_bits_multiple)] = .{
121 .llvm_name = "insert-reference-bits-multiple",
122 .description = "Assume that the insert-reference-bits-multiple facility is installed",
123 .dependencies = featureSet(&[_]Feature{}),
124 };
125 result[@enumToInt(Feature.interlocked_access1)] = .{
126 .llvm_name = "interlocked-access1",
127 .description = "Assume that interlocked-access facility 1 is installed",
128 .dependencies = featureSet(&[_]Feature{}),
129 };
130 result[@enumToInt(Feature.load_and_trap)] = .{
131 .llvm_name = "load-and-trap",
132 .description = "Assume that the load-and-trap facility is installed",
133 .dependencies = featureSet(&[_]Feature{}),
134 };
135 result[@enumToInt(Feature.load_and_zero_rightmost_byte)] = .{
136 .llvm_name = "load-and-zero-rightmost-byte",
137 .description = "Assume that the load-and-zero-rightmost-byte facility is installed",
138 .dependencies = featureSet(&[_]Feature{}),
139 };
140 result[@enumToInt(Feature.load_store_on_cond)] = .{
141 .llvm_name = "load-store-on-cond",
142 .description = "Assume that the load/store-on-condition facility is installed",
143 .dependencies = featureSet(&[_]Feature{}),
144 };
145 result[@enumToInt(Feature.load_store_on_cond_2)] = .{
146 .llvm_name = "load-store-on-cond-2",
147 .description = "Assume that the load/store-on-condition facility 2 is installed",
148 .dependencies = featureSet(&[_]Feature{}),
149 };
150 result[@enumToInt(Feature.message_security_assist_extension3)] = .{
151 .llvm_name = "message-security-assist-extension3",
152 .description = "Assume that the message-security-assist extension facility 3 is installed",
153 .dependencies = featureSet(&[_]Feature{}),
154 };
155 result[@enumToInt(Feature.message_security_assist_extension4)] = .{
156 .llvm_name = "message-security-assist-extension4",
157 .description = "Assume that the message-security-assist extension facility 4 is installed",
158 .dependencies = featureSet(&[_]Feature{}),
159 };
160 result[@enumToInt(Feature.message_security_assist_extension5)] = .{
161 .llvm_name = "message-security-assist-extension5",
162 .description = "Assume that the message-security-assist extension facility 5 is installed",
163 .dependencies = featureSet(&[_]Feature{}),
164 };
165 result[@enumToInt(Feature.message_security_assist_extension7)] = .{
166 .llvm_name = "message-security-assist-extension7",
167 .description = "Assume that the message-security-assist extension facility 7 is installed",
168 .dependencies = featureSet(&[_]Feature{}),
169 };
170 result[@enumToInt(Feature.message_security_assist_extension8)] = .{
171 .llvm_name = "message-security-assist-extension8",
172 .description = "Assume that the message-security-assist extension facility 8 is installed",
173 .dependencies = featureSet(&[_]Feature{}),
174 };
175 result[@enumToInt(Feature.message_security_assist_extension9)] = .{
176 .llvm_name = "message-security-assist-extension9",
177 .description = "Assume that the message-security-assist extension facility 9 is installed",
178 .dependencies = featureSet(&[_]Feature{}),
179 };
180 result[@enumToInt(Feature.miscellaneous_extensions)] = .{
181 .llvm_name = "miscellaneous-extensions",
182 .description = "Assume that the miscellaneous-extensions facility is installed",
183 .dependencies = featureSet(&[_]Feature{}),
184 };
185 result[@enumToInt(Feature.miscellaneous_extensions_2)] = .{
186 .llvm_name = "miscellaneous-extensions-2",
187 .description = "Assume that the miscellaneous-extensions facility 2 is installed",
188 .dependencies = featureSet(&[_]Feature{}),
189 };
190 result[@enumToInt(Feature.miscellaneous_extensions_3)] = .{
191 .llvm_name = "miscellaneous-extensions-3",
192 .description = "Assume that the miscellaneous-extensions facility 3 is installed",
193 .dependencies = featureSet(&[_]Feature{}),
194 };
195 result[@enumToInt(Feature.nnp_assist)] = .{
196 .llvm_name = "nnp-assist",
197 .description = "Assume that the NNP-assist facility is installed",
198 .dependencies = featureSet(&[_]Feature{}),
199 };
200 result[@enumToInt(Feature.population_count)] = .{
201 .llvm_name = "population-count",
202 .description = "Assume that the population-count facility is installed",
203 .dependencies = featureSet(&[_]Feature{}),
204 };
205 result[@enumToInt(Feature.processor_activity_instrumentation)] = .{
206 .llvm_name = "processor-activity-instrumentation",
207 .description = "Assume that the processor-activity-instrumentation facility is installed",
208 .dependencies = featureSet(&[_]Feature{}),
209 };
210 result[@enumToInt(Feature.processor_assist)] = .{
211 .llvm_name = "processor-assist",
212 .description = "Assume that the processor-assist facility is installed",
213 .dependencies = featureSet(&[_]Feature{}),
214 };
215 result[@enumToInt(Feature.reset_dat_protection)] = .{
216 .llvm_name = "reset-dat-protection",
217 .description = "Assume that the reset-DAT-protection facility is installed",
218 .dependencies = featureSet(&[_]Feature{}),
219 };
220 result[@enumToInt(Feature.reset_reference_bits_multiple)] = .{
221 .llvm_name = "reset-reference-bits-multiple",
222 .description = "Assume that the reset-reference-bits-multiple facility is installed",
223 .dependencies = featureSet(&[_]Feature{}),
224 };
225 result[@enumToInt(Feature.soft_float)] = .{
226 .llvm_name = "soft-float",
227 .description = "Use software emulation for floating point",
228 .dependencies = featureSet(&[_]Feature{}),
229 };
230 result[@enumToInt(Feature.transactional_execution)] = .{
231 .llvm_name = "transactional-execution",
232 .description = "Assume that the transactional-execution facility is installed",
233 .dependencies = featureSet(&[_]Feature{}),
234 };
235 result[@enumToInt(Feature.vector)] = .{
236 .llvm_name = "vector",
237 .description = "Assume that the vectory facility is installed",
238 .dependencies = featureSet(&[_]Feature{}),
239 };
240 result[@enumToInt(Feature.vector_enhancements_1)] = .{
241 .llvm_name = "vector-enhancements-1",
242 .description = "Assume that the vector enhancements facility 1 is installed",
243 .dependencies = featureSet(&[_]Feature{}),
244 };
245 result[@enumToInt(Feature.vector_enhancements_2)] = .{
246 .llvm_name = "vector-enhancements-2",
247 .description = "Assume that the vector enhancements facility 2 is installed",
248 .dependencies = featureSet(&[_]Feature{}),
249 };
250 result[@enumToInt(Feature.vector_packed_decimal)] = .{
251 .llvm_name = "vector-packed-decimal",
252 .description = "Assume that the vector packed decimal facility is installed",
253 .dependencies = featureSet(&[_]Feature{}),
254 };
255 result[@enumToInt(Feature.vector_packed_decimal_enhancement)] = .{
256 .llvm_name = "vector-packed-decimal-enhancement",
257 .description = "Assume that the vector packed decimal enhancement facility is installed",
258 .dependencies = featureSet(&[_]Feature{}),
259 };
260 result[@enumToInt(Feature.vector_packed_decimal_enhancement_2)] = .{
261 .llvm_name = "vector-packed-decimal-enhancement-2",
262 .description = "Assume that the vector packed decimal enhancement facility 2 is installed",
263 .dependencies = featureSet(&[_]Feature{}),
264 };
265 const ti = @typeInfo(Feature);
266 for (result) |*elem, i| {
267 elem.index = i;
268 elem.name = ti.Enum.fields[i].name;
269 }
270 break :blk result;
271};
272
273pub const cpu = struct {
274 pub const arch10 = CpuModel{
275 .name = "arch10",
276 .llvm_name = "arch10",
277 .features = featureSet(&[_]Feature{
278 .dfp_zoned_conversion,
279 .distinct_ops,
280 .enhanced_dat_2,
281 .execution_hint,
282 .fast_serialization,
283 .fp_extension,
284 .high_word,
285 .interlocked_access1,
286 .load_and_trap,
287 .load_store_on_cond,
288 .message_security_assist_extension3,
289 .message_security_assist_extension4,
290 .miscellaneous_extensions,
291 .population_count,
292 .processor_assist,
293 .reset_reference_bits_multiple,
294 .transactional_execution,
295 }),
296 };
297 pub const arch11 = CpuModel{
298 .name = "arch11",
299 .llvm_name = "arch11",
300 .features = featureSet(&[_]Feature{
301 .dfp_packed_conversion,
302 .dfp_zoned_conversion,
303 .distinct_ops,
304 .enhanced_dat_2,
305 .execution_hint,
306 .fast_serialization,
307 .fp_extension,
308 .high_word,
309 .interlocked_access1,
310 .load_and_trap,
311 .load_and_zero_rightmost_byte,
312 .load_store_on_cond,
313 .load_store_on_cond_2,
314 .message_security_assist_extension3,
315 .message_security_assist_extension4,
316 .message_security_assist_extension5,
317 .miscellaneous_extensions,
318 .population_count,
319 .processor_assist,
320 .reset_reference_bits_multiple,
321 .transactional_execution,
322 .vector,
323 }),
324 };
325 pub const arch12 = CpuModel{
326 .name = "arch12",
327 .llvm_name = "arch12",
328 .features = featureSet(&[_]Feature{
329 .dfp_packed_conversion,
330 .dfp_zoned_conversion,
331 .distinct_ops,
332 .enhanced_dat_2,
333 .execution_hint,
334 .fast_serialization,
335 .fp_extension,
336 .guarded_storage,
337 .high_word,
338 .insert_reference_bits_multiple,
339 .interlocked_access1,
340 .load_and_trap,
341 .load_and_zero_rightmost_byte,
342 .load_store_on_cond,
343 .load_store_on_cond_2,
344 .message_security_assist_extension3,
345 .message_security_assist_extension4,
346 .message_security_assist_extension5,
347 .message_security_assist_extension7,
348 .message_security_assist_extension8,
349 .miscellaneous_extensions,
350 .miscellaneous_extensions_2,
351 .population_count,
352 .processor_assist,
353 .reset_reference_bits_multiple,
354 .transactional_execution,
355 .vector,
356 .vector_enhancements_1,
357 .vector_packed_decimal,
358 }),
359 };
360 pub const arch13 = CpuModel{
361 .name = "arch13",
362 .llvm_name = "arch13",
363 .features = featureSet(&[_]Feature{
364 .deflate_conversion,
365 .dfp_packed_conversion,
366 .dfp_zoned_conversion,
367 .distinct_ops,
368 .enhanced_dat_2,
369 .enhanced_sort,
370 .execution_hint,
371 .fast_serialization,
372 .fp_extension,
373 .guarded_storage,
374 .high_word,
375 .insert_reference_bits_multiple,
376 .interlocked_access1,
377 .load_and_trap,
378 .load_and_zero_rightmost_byte,
379 .load_store_on_cond,
380 .load_store_on_cond_2,
381 .message_security_assist_extension3,
382 .message_security_assist_extension4,
383 .message_security_assist_extension5,
384 .message_security_assist_extension7,
385 .message_security_assist_extension8,
386 .message_security_assist_extension9,
387 .miscellaneous_extensions,
388 .miscellaneous_extensions_2,
389 .miscellaneous_extensions_3,
390 .population_count,
391 .processor_assist,
392 .reset_reference_bits_multiple,
393 .transactional_execution,
394 .vector,
395 .vector_enhancements_1,
396 .vector_enhancements_2,
397 .vector_packed_decimal,
398 .vector_packed_decimal_enhancement,
399 }),
400 };
401 pub const arch14 = CpuModel{
402 .name = "arch14",
403 .llvm_name = "arch14",
404 .features = featureSet(&[_]Feature{
405 .bear_enhancement,
406 .deflate_conversion,
407 .dfp_packed_conversion,
408 .dfp_zoned_conversion,
409 .distinct_ops,
410 .enhanced_dat_2,
411 .enhanced_sort,
412 .execution_hint,
413 .fast_serialization,
414 .fp_extension,
415 .guarded_storage,
416 .high_word,
417 .insert_reference_bits_multiple,
418 .interlocked_access1,
419 .load_and_trap,
420 .load_and_zero_rightmost_byte,
421 .load_store_on_cond,
422 .load_store_on_cond_2,
423 .message_security_assist_extension3,
424 .message_security_assist_extension4,
425 .message_security_assist_extension5,
426 .message_security_assist_extension7,
427 .message_security_assist_extension8,
428 .message_security_assist_extension9,
429 .miscellaneous_extensions,
430 .miscellaneous_extensions_2,
431 .miscellaneous_extensions_3,
432 .nnp_assist,
433 .population_count,
434 .processor_activity_instrumentation,
435 .processor_assist,
436 .reset_dat_protection,
437 .reset_reference_bits_multiple,
438 .transactional_execution,
439 .vector,
440 .vector_enhancements_1,
441 .vector_enhancements_2,
442 .vector_packed_decimal,
443 .vector_packed_decimal_enhancement,
444 .vector_packed_decimal_enhancement_2,
445 }),
446 };
447 pub const arch8 = CpuModel{
448 .name = "arch8",
449 .llvm_name = "arch8",
450 .features = featureSet(&[_]Feature{}),
451 };
452 pub const arch9 = CpuModel{
453 .name = "arch9",
454 .llvm_name = "arch9",
455 .features = featureSet(&[_]Feature{
456 .distinct_ops,
457 .fast_serialization,
458 .fp_extension,
459 .high_word,
460 .interlocked_access1,
461 .load_store_on_cond,
462 .message_security_assist_extension3,
463 .message_security_assist_extension4,
464 .population_count,
465 .reset_reference_bits_multiple,
466 }),
467 };
468 pub const generic = CpuModel{
469 .name = "generic",
470 .llvm_name = "generic",
471 .features = featureSet(&[_]Feature{}),
472 };
473 pub const z10 = CpuModel{
474 .name = "z10",
475 .llvm_name = "z10",
476 .features = featureSet(&[_]Feature{}),
477 };
478 pub const z13 = CpuModel{
479 .name = "z13",
480 .llvm_name = "z13",
481 .features = featureSet(&[_]Feature{
482 .dfp_packed_conversion,
483 .dfp_zoned_conversion,
484 .distinct_ops,
485 .enhanced_dat_2,
486 .execution_hint,
487 .fast_serialization,
488 .fp_extension,
489 .high_word,
490 .interlocked_access1,
491 .load_and_trap,
492 .load_and_zero_rightmost_byte,
493 .load_store_on_cond,
494 .load_store_on_cond_2,
495 .message_security_assist_extension3,
496 .message_security_assist_extension4,
497 .message_security_assist_extension5,
498 .miscellaneous_extensions,
499 .population_count,
500 .processor_assist,
501 .reset_reference_bits_multiple,
502 .transactional_execution,
503 .vector,
504 }),
505 };
506 pub const z14 = CpuModel{
507 .name = "z14",
508 .llvm_name = "z14",
509 .features = featureSet(&[_]Feature{
510 .dfp_packed_conversion,
511 .dfp_zoned_conversion,
512 .distinct_ops,
513 .enhanced_dat_2,
514 .execution_hint,
515 .fast_serialization,
516 .fp_extension,
517 .guarded_storage,
518 .high_word,
519 .insert_reference_bits_multiple,
520 .interlocked_access1,
521 .load_and_trap,
522 .load_and_zero_rightmost_byte,
523 .load_store_on_cond,
524 .load_store_on_cond_2,
525 .message_security_assist_extension3,
526 .message_security_assist_extension4,
527 .message_security_assist_extension5,
528 .message_security_assist_extension7,
529 .message_security_assist_extension8,
530 .miscellaneous_extensions,
531 .miscellaneous_extensions_2,
532 .population_count,
533 .processor_assist,
534 .reset_reference_bits_multiple,
535 .transactional_execution,
536 .vector,
537 .vector_enhancements_1,
538 .vector_packed_decimal,
539 }),
540 };
541 pub const z15 = CpuModel{
542 .name = "z15",
543 .llvm_name = "z15",
544 .features = featureSet(&[_]Feature{
545 .deflate_conversion,
546 .dfp_packed_conversion,
547 .dfp_zoned_conversion,
548 .distinct_ops,
549 .enhanced_dat_2,
550 .enhanced_sort,
551 .execution_hint,
552 .fast_serialization,
553 .fp_extension,
554 .guarded_storage,
555 .high_word,
556 .insert_reference_bits_multiple,
557 .interlocked_access1,
558 .load_and_trap,
559 .load_and_zero_rightmost_byte,
560 .load_store_on_cond,
561 .load_store_on_cond_2,
562 .message_security_assist_extension3,
563 .message_security_assist_extension4,
564 .message_security_assist_extension5,
565 .message_security_assist_extension7,
566 .message_security_assist_extension8,
567 .message_security_assist_extension9,
568 .miscellaneous_extensions,
569 .miscellaneous_extensions_2,
570 .miscellaneous_extensions_3,
571 .population_count,
572 .processor_assist,
573 .reset_reference_bits_multiple,
574 .transactional_execution,
575 .vector,
576 .vector_enhancements_1,
577 .vector_enhancements_2,
578 .vector_packed_decimal,
579 .vector_packed_decimal_enhancement,
580 }),
581 };
582 pub const z196 = CpuModel{
583 .name = "z196",
584 .llvm_name = "z196",
585 .features = featureSet(&[_]Feature{
586 .distinct_ops,
587 .fast_serialization,
588 .fp_extension,
589 .high_word,
590 .interlocked_access1,
591 .load_store_on_cond,
592 .message_security_assist_extension3,
593 .message_security_assist_extension4,
594 .population_count,
595 .reset_reference_bits_multiple,
596 }),
597 };
598 pub const zEC12 = CpuModel{
599 .name = "zEC12",
600 .llvm_name = "zEC12",
601 .features = featureSet(&[_]Feature{
602 .dfp_zoned_conversion,
603 .distinct_ops,
604 .enhanced_dat_2,
605 .execution_hint,
606 .fast_serialization,
607 .fp_extension,
608 .high_word,
609 .interlocked_access1,
610 .load_and_trap,
611 .load_store_on_cond,
612 .message_security_assist_extension3,
613 .message_security_assist_extension4,
614 .miscellaneous_extensions,
615 .population_count,
616 .processor_assist,
617 .reset_reference_bits_multiple,
618 .transactional_execution,
619 }),
620 };
621};
lib/std/target/systemz.zig deleted-621
...@@ -1,621 +0,0 @@
1//! This file is auto-generated by tools/update_cpu_features.zig.
2
3const std = @import("../std.zig");
4const CpuFeature = std.Target.Cpu.Feature;
5const CpuModel = std.Target.Cpu.Model;
6
7pub const Feature = enum {
8 bear_enhancement,
9 deflate_conversion,
10 dfp_packed_conversion,
11 dfp_zoned_conversion,
12 distinct_ops,
13 enhanced_dat_2,
14 enhanced_sort,
15 execution_hint,
16 fast_serialization,
17 fp_extension,
18 guarded_storage,
19 high_word,
20 insert_reference_bits_multiple,
21 interlocked_access1,
22 load_and_trap,
23 load_and_zero_rightmost_byte,
24 load_store_on_cond,
25 load_store_on_cond_2,
26 message_security_assist_extension3,
27 message_security_assist_extension4,
28 message_security_assist_extension5,
29 message_security_assist_extension7,
30 message_security_assist_extension8,
31 message_security_assist_extension9,
32 miscellaneous_extensions,
33 miscellaneous_extensions_2,
34 miscellaneous_extensions_3,
35 nnp_assist,
36 population_count,
37 processor_activity_instrumentation,
38 processor_assist,
39 reset_dat_protection,
40 reset_reference_bits_multiple,
41 soft_float,
42 transactional_execution,
43 vector,
44 vector_enhancements_1,
45 vector_enhancements_2,
46 vector_packed_decimal,
47 vector_packed_decimal_enhancement,
48 vector_packed_decimal_enhancement_2,
49};
50
51pub const featureSet = CpuFeature.feature_set_fns(Feature).featureSet;
52pub const featureSetHas = CpuFeature.feature_set_fns(Feature).featureSetHas;
53pub const featureSetHasAny = CpuFeature.feature_set_fns(Feature).featureSetHasAny;
54pub const featureSetHasAll = CpuFeature.feature_set_fns(Feature).featureSetHasAll;
55
56pub const all_features = blk: {
57 const len = @typeInfo(Feature).Enum.fields.len;
58 std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
59 var result: [len]CpuFeature = undefined;
60 result[@enumToInt(Feature.bear_enhancement)] = .{
61 .llvm_name = "bear-enhancement",
62 .description = "Assume that the BEAR-enhancement facility is installed",
63 .dependencies = featureSet(&[_]Feature{}),
64 };
65 result[@enumToInt(Feature.deflate_conversion)] = .{
66 .llvm_name = "deflate-conversion",
67 .description = "Assume that the deflate-conversion facility is installed",
68 .dependencies = featureSet(&[_]Feature{}),
69 };
70 result[@enumToInt(Feature.dfp_packed_conversion)] = .{
71 .llvm_name = "dfp-packed-conversion",
72 .description = "Assume that the DFP packed-conversion facility is installed",
73 .dependencies = featureSet(&[_]Feature{}),
74 };
75 result[@enumToInt(Feature.dfp_zoned_conversion)] = .{
76 .llvm_name = "dfp-zoned-conversion",
77 .description = "Assume that the DFP zoned-conversion facility is installed",
78 .dependencies = featureSet(&[_]Feature{}),
79 };
80 result[@enumToInt(Feature.distinct_ops)] = .{
81 .llvm_name = "distinct-ops",
82 .description = "Assume that the distinct-operands facility is installed",
83 .dependencies = featureSet(&[_]Feature{}),
84 };
85 result[@enumToInt(Feature.enhanced_dat_2)] = .{
86 .llvm_name = "enhanced-dat-2",
87 .description = "Assume that the enhanced-DAT facility 2 is installed",
88 .dependencies = featureSet(&[_]Feature{}),
89 };
90 result[@enumToInt(Feature.enhanced_sort)] = .{
91 .llvm_name = "enhanced-sort",
92 .description = "Assume that the enhanced-sort facility is installed",
93 .dependencies = featureSet(&[_]Feature{}),
94 };
95 result[@enumToInt(Feature.execution_hint)] = .{
96 .llvm_name = "execution-hint",
97 .description = "Assume that the execution-hint facility is installed",
98 .dependencies = featureSet(&[_]Feature{}),
99 };
100 result[@enumToInt(Feature.fast_serialization)] = .{
101 .llvm_name = "fast-serialization",
102 .description = "Assume that the fast-serialization facility is installed",
103 .dependencies = featureSet(&[_]Feature{}),
104 };
105 result[@enumToInt(Feature.fp_extension)] = .{
106 .llvm_name = "fp-extension",
107 .description = "Assume that the floating-point extension facility is installed",
108 .dependencies = featureSet(&[_]Feature{}),
109 };
110 result[@enumToInt(Feature.guarded_storage)] = .{
111 .llvm_name = "guarded-storage",
112 .description = "Assume that the guarded-storage facility is installed",
113 .dependencies = featureSet(&[_]Feature{}),
114 };
115 result[@enumToInt(Feature.high_word)] = .{
116 .llvm_name = "high-word",
117 .description = "Assume that the high-word facility is installed",
118 .dependencies = featureSet(&[_]Feature{}),
119 };
120 result[@enumToInt(Feature.insert_reference_bits_multiple)] = .{
121 .llvm_name = "insert-reference-bits-multiple",
122 .description = "Assume that the insert-reference-bits-multiple facility is installed",
123 .dependencies = featureSet(&[_]Feature{}),
124 };
125 result[@enumToInt(Feature.interlocked_access1)] = .{
126 .llvm_name = "interlocked-access1",
127 .description = "Assume that interlocked-access facility 1 is installed",
128 .dependencies = featureSet(&[_]Feature{}),
129 };
130 result[@enumToInt(Feature.load_and_trap)] = .{
131 .llvm_name = "load-and-trap",
132 .description = "Assume that the load-and-trap facility is installed",
133 .dependencies = featureSet(&[_]Feature{}),
134 };
135 result[@enumToInt(Feature.load_and_zero_rightmost_byte)] = .{
136 .llvm_name = "load-and-zero-rightmost-byte",
137 .description = "Assume that the load-and-zero-rightmost-byte facility is installed",
138 .dependencies = featureSet(&[_]Feature{}),
139 };
140 result[@enumToInt(Feature.load_store_on_cond)] = .{
141 .llvm_name = "load-store-on-cond",
142 .description = "Assume that the load/store-on-condition facility is installed",
143 .dependencies = featureSet(&[_]Feature{}),
144 };
145 result[@enumToInt(Feature.load_store_on_cond_2)] = .{
146 .llvm_name = "load-store-on-cond-2",
147 .description = "Assume that the load/store-on-condition facility 2 is installed",
148 .dependencies = featureSet(&[_]Feature{}),
149 };
150 result[@enumToInt(Feature.message_security_assist_extension3)] = .{
151 .llvm_name = "message-security-assist-extension3",
152 .description = "Assume that the message-security-assist extension facility 3 is installed",
153 .dependencies = featureSet(&[_]Feature{}),
154 };
155 result[@enumToInt(Feature.message_security_assist_extension4)] = .{
156 .llvm_name = "message-security-assist-extension4",
157 .description = "Assume that the message-security-assist extension facility 4 is installed",
158 .dependencies = featureSet(&[_]Feature{}),
159 };
160 result[@enumToInt(Feature.message_security_assist_extension5)] = .{
161 .llvm_name = "message-security-assist-extension5",
162 .description = "Assume that the message-security-assist extension facility 5 is installed",
163 .dependencies = featureSet(&[_]Feature{}),
164 };
165 result[@enumToInt(Feature.message_security_assist_extension7)] = .{
166 .llvm_name = "message-security-assist-extension7",
167 .description = "Assume that the message-security-assist extension facility 7 is installed",
168 .dependencies = featureSet(&[_]Feature{}),
169 };
170 result[@enumToInt(Feature.message_security_assist_extension8)] = .{
171 .llvm_name = "message-security-assist-extension8",
172 .description = "Assume that the message-security-assist extension facility 8 is installed",
173 .dependencies = featureSet(&[_]Feature{}),
174 };
175 result[@enumToInt(Feature.message_security_assist_extension9)] = .{
176 .llvm_name = "message-security-assist-extension9",
177 .description = "Assume that the message-security-assist extension facility 9 is installed",
178 .dependencies = featureSet(&[_]Feature{}),
179 };
180 result[@enumToInt(Feature.miscellaneous_extensions)] = .{
181 .llvm_name = "miscellaneous-extensions",
182 .description = "Assume that the miscellaneous-extensions facility is installed",
183 .dependencies = featureSet(&[_]Feature{}),
184 };
185 result[@enumToInt(Feature.miscellaneous_extensions_2)] = .{
186 .llvm_name = "miscellaneous-extensions-2",
187 .description = "Assume that the miscellaneous-extensions facility 2 is installed",
188 .dependencies = featureSet(&[_]Feature{}),
189 };
190 result[@enumToInt(Feature.miscellaneous_extensions_3)] = .{
191 .llvm_name = "miscellaneous-extensions-3",
192 .description = "Assume that the miscellaneous-extensions facility 3 is installed",
193 .dependencies = featureSet(&[_]Feature{}),
194 };
195 result[@enumToInt(Feature.nnp_assist)] = .{
196 .llvm_name = "nnp-assist",
197 .description = "Assume that the NNP-assist facility is installed",
198 .dependencies = featureSet(&[_]Feature{}),
199 };
200 result[@enumToInt(Feature.population_count)] = .{
201 .llvm_name = "population-count",
202 .description = "Assume that the population-count facility is installed",
203 .dependencies = featureSet(&[_]Feature{}),
204 };
205 result[@enumToInt(Feature.processor_activity_instrumentation)] = .{
206 .llvm_name = "processor-activity-instrumentation",
207 .description = "Assume that the processor-activity-instrumentation facility is installed",
208 .dependencies = featureSet(&[_]Feature{}),
209 };
210 result[@enumToInt(Feature.processor_assist)] = .{
211 .llvm_name = "processor-assist",
212 .description = "Assume that the processor-assist facility is installed",
213 .dependencies = featureSet(&[_]Feature{}),
214 };
215 result[@enumToInt(Feature.reset_dat_protection)] = .{
216 .llvm_name = "reset-dat-protection",
217 .description = "Assume that the reset-DAT-protection facility is installed",
218 .dependencies = featureSet(&[_]Feature{}),
219 };
220 result[@enumToInt(Feature.reset_reference_bits_multiple)] = .{
221 .llvm_name = "reset-reference-bits-multiple",
222 .description = "Assume that the reset-reference-bits-multiple facility is installed",
223 .dependencies = featureSet(&[_]Feature{}),
224 };
225 result[@enumToInt(Feature.soft_float)] = .{
226 .llvm_name = "soft-float",
227 .description = "Use software emulation for floating point",
228 .dependencies = featureSet(&[_]Feature{}),
229 };
230 result[@enumToInt(Feature.transactional_execution)] = .{
231 .llvm_name = "transactional-execution",
232 .description = "Assume that the transactional-execution facility is installed",
233 .dependencies = featureSet(&[_]Feature{}),
234 };
235 result[@enumToInt(Feature.vector)] = .{
236 .llvm_name = "vector",
237 .description = "Assume that the vectory facility is installed",
238 .dependencies = featureSet(&[_]Feature{}),
239 };
240 result[@enumToInt(Feature.vector_enhancements_1)] = .{
241 .llvm_name = "vector-enhancements-1",
242 .description = "Assume that the vector enhancements facility 1 is installed",
243 .dependencies = featureSet(&[_]Feature{}),
244 };
245 result[@enumToInt(Feature.vector_enhancements_2)] = .{
246 .llvm_name = "vector-enhancements-2",
247 .description = "Assume that the vector enhancements facility 2 is installed",
248 .dependencies = featureSet(&[_]Feature{}),
249 };
250 result[@enumToInt(Feature.vector_packed_decimal)] = .{
251 .llvm_name = "vector-packed-decimal",
252 .description = "Assume that the vector packed decimal facility is installed",
253 .dependencies = featureSet(&[_]Feature{}),
254 };
255 result[@enumToInt(Feature.vector_packed_decimal_enhancement)] = .{
256 .llvm_name = "vector-packed-decimal-enhancement",
257 .description = "Assume that the vector packed decimal enhancement facility is installed",
258 .dependencies = featureSet(&[_]Feature{}),
259 };
260 result[@enumToInt(Feature.vector_packed_decimal_enhancement_2)] = .{
261 .llvm_name = "vector-packed-decimal-enhancement-2",
262 .description = "Assume that the vector packed decimal enhancement facility 2 is installed",
263 .dependencies = featureSet(&[_]Feature{}),
264 };
265 const ti = @typeInfo(Feature);
266 for (result) |*elem, i| {
267 elem.index = i;
268 elem.name = ti.Enum.fields[i].name;
269 }
270 break :blk result;
271};
272
273pub const cpu = struct {
274 pub const arch10 = CpuModel{
275 .name = "arch10",
276 .llvm_name = "arch10",
277 .features = featureSet(&[_]Feature{
278 .dfp_zoned_conversion,
279 .distinct_ops,
280 .enhanced_dat_2,
281 .execution_hint,
282 .fast_serialization,
283 .fp_extension,
284 .high_word,
285 .interlocked_access1,
286 .load_and_trap,
287 .load_store_on_cond,
288 .message_security_assist_extension3,
289 .message_security_assist_extension4,
290 .miscellaneous_extensions,
291 .population_count,
292 .processor_assist,
293 .reset_reference_bits_multiple,
294 .transactional_execution,
295 }),
296 };
297 pub const arch11 = CpuModel{
298 .name = "arch11",
299 .llvm_name = "arch11",
300 .features = featureSet(&[_]Feature{
301 .dfp_packed_conversion,
302 .dfp_zoned_conversion,
303 .distinct_ops,
304 .enhanced_dat_2,
305 .execution_hint,
306 .fast_serialization,
307 .fp_extension,
308 .high_word,
309 .interlocked_access1,
310 .load_and_trap,
311 .load_and_zero_rightmost_byte,
312 .load_store_on_cond,
313 .load_store_on_cond_2,
314 .message_security_assist_extension3,
315 .message_security_assist_extension4,
316 .message_security_assist_extension5,
317 .miscellaneous_extensions,
318 .population_count,
319 .processor_assist,
320 .reset_reference_bits_multiple,
321 .transactional_execution,
322 .vector,
323 }),
324 };
325 pub const arch12 = CpuModel{
326 .name = "arch12",
327 .llvm_name = "arch12",
328 .features = featureSet(&[_]Feature{
329 .dfp_packed_conversion,
330 .dfp_zoned_conversion,
331 .distinct_ops,
332 .enhanced_dat_2,
333 .execution_hint,
334 .fast_serialization,
335 .fp_extension,
336 .guarded_storage,
337 .high_word,
338 .insert_reference_bits_multiple,
339 .interlocked_access1,
340 .load_and_trap,
341 .load_and_zero_rightmost_byte,
342 .load_store_on_cond,
343 .load_store_on_cond_2,
344 .message_security_assist_extension3,
345 .message_security_assist_extension4,
346 .message_security_assist_extension5,
347 .message_security_assist_extension7,
348 .message_security_assist_extension8,
349 .miscellaneous_extensions,
350 .miscellaneous_extensions_2,
351 .population_count,
352 .processor_assist,
353 .reset_reference_bits_multiple,
354 .transactional_execution,
355 .vector,
356 .vector_enhancements_1,
357 .vector_packed_decimal,
358 }),
359 };
360 pub const arch13 = CpuModel{
361 .name = "arch13",
362 .llvm_name = "arch13",
363 .features = featureSet(&[_]Feature{
364 .deflate_conversion,
365 .dfp_packed_conversion,
366 .dfp_zoned_conversion,
367 .distinct_ops,
368 .enhanced_dat_2,
369 .enhanced_sort,
370 .execution_hint,
371 .fast_serialization,
372 .fp_extension,
373 .guarded_storage,
374 .high_word,
375 .insert_reference_bits_multiple,
376 .interlocked_access1,
377 .load_and_trap,
378 .load_and_zero_rightmost_byte,
379 .load_store_on_cond,
380 .load_store_on_cond_2,
381 .message_security_assist_extension3,
382 .message_security_assist_extension4,
383 .message_security_assist_extension5,
384 .message_security_assist_extension7,
385 .message_security_assist_extension8,
386 .message_security_assist_extension9,
387 .miscellaneous_extensions,
388 .miscellaneous_extensions_2,
389 .miscellaneous_extensions_3,
390 .population_count,
391 .processor_assist,
392 .reset_reference_bits_multiple,
393 .transactional_execution,
394 .vector,
395 .vector_enhancements_1,
396 .vector_enhancements_2,
397 .vector_packed_decimal,
398 .vector_packed_decimal_enhancement,
399 }),
400 };
401 pub const arch14 = CpuModel{
402 .name = "arch14",
403 .llvm_name = "arch14",
404 .features = featureSet(&[_]Feature{
405 .bear_enhancement,
406 .deflate_conversion,
407 .dfp_packed_conversion,
408 .dfp_zoned_conversion,
409 .distinct_ops,
410 .enhanced_dat_2,
411 .enhanced_sort,
412 .execution_hint,
413 .fast_serialization,
414 .fp_extension,
415 .guarded_storage,
416 .high_word,
417 .insert_reference_bits_multiple,
418 .interlocked_access1,
419 .load_and_trap,
420 .load_and_zero_rightmost_byte,
421 .load_store_on_cond,
422 .load_store_on_cond_2,
423 .message_security_assist_extension3,
424 .message_security_assist_extension4,
425 .message_security_assist_extension5,
426 .message_security_assist_extension7,
427 .message_security_assist_extension8,
428 .message_security_assist_extension9,
429 .miscellaneous_extensions,
430 .miscellaneous_extensions_2,
431 .miscellaneous_extensions_3,
432 .nnp_assist,
433 .population_count,
434 .processor_activity_instrumentation,
435 .processor_assist,
436 .reset_dat_protection,
437 .reset_reference_bits_multiple,
438 .transactional_execution,
439 .vector,
440 .vector_enhancements_1,
441 .vector_enhancements_2,
442 .vector_packed_decimal,
443 .vector_packed_decimal_enhancement,
444 .vector_packed_decimal_enhancement_2,
445 }),
446 };
447 pub const arch8 = CpuModel{
448 .name = "arch8",
449 .llvm_name = "arch8",
450 .features = featureSet(&[_]Feature{}),
451 };
452 pub const arch9 = CpuModel{
453 .name = "arch9",
454 .llvm_name = "arch9",
455 .features = featureSet(&[_]Feature{
456 .distinct_ops,
457 .fast_serialization,
458 .fp_extension,
459 .high_word,
460 .interlocked_access1,
461 .load_store_on_cond,
462 .message_security_assist_extension3,
463 .message_security_assist_extension4,
464 .population_count,
465 .reset_reference_bits_multiple,
466 }),
467 };
468 pub const generic = CpuModel{
469 .name = "generic",
470 .llvm_name = "generic",
471 .features = featureSet(&[_]Feature{}),
472 };
473 pub const z10 = CpuModel{
474 .name = "z10",
475 .llvm_name = "z10",
476 .features = featureSet(&[_]Feature{}),
477 };
478 pub const z13 = CpuModel{
479 .name = "z13",
480 .llvm_name = "z13",
481 .features = featureSet(&[_]Feature{
482 .dfp_packed_conversion,
483 .dfp_zoned_conversion,
484 .distinct_ops,
485 .enhanced_dat_2,
486 .execution_hint,
487 .fast_serialization,
488 .fp_extension,
489 .high_word,
490 .interlocked_access1,
491 .load_and_trap,
492 .load_and_zero_rightmost_byte,
493 .load_store_on_cond,
494 .load_store_on_cond_2,
495 .message_security_assist_extension3,
496 .message_security_assist_extension4,
497 .message_security_assist_extension5,
498 .miscellaneous_extensions,
499 .population_count,
500 .processor_assist,
501 .reset_reference_bits_multiple,
502 .transactional_execution,
503 .vector,
504 }),
505 };
506 pub const z14 = CpuModel{
507 .name = "z14",
508 .llvm_name = "z14",
509 .features = featureSet(&[_]Feature{
510 .dfp_packed_conversion,
511 .dfp_zoned_conversion,
512 .distinct_ops,
513 .enhanced_dat_2,
514 .execution_hint,
515 .fast_serialization,
516 .fp_extension,
517 .guarded_storage,
518 .high_word,
519 .insert_reference_bits_multiple,
520 .interlocked_access1,
521 .load_and_trap,
522 .load_and_zero_rightmost_byte,
523 .load_store_on_cond,
524 .load_store_on_cond_2,
525 .message_security_assist_extension3,
526 .message_security_assist_extension4,
527 .message_security_assist_extension5,
528 .message_security_assist_extension7,
529 .message_security_assist_extension8,
530 .miscellaneous_extensions,
531 .miscellaneous_extensions_2,
532 .population_count,
533 .processor_assist,
534 .reset_reference_bits_multiple,
535 .transactional_execution,
536 .vector,
537 .vector_enhancements_1,
538 .vector_packed_decimal,
539 }),
540 };
541 pub const z15 = CpuModel{
542 .name = "z15",
543 .llvm_name = "z15",
544 .features = featureSet(&[_]Feature{
545 .deflate_conversion,
546 .dfp_packed_conversion,
547 .dfp_zoned_conversion,
548 .distinct_ops,
549 .enhanced_dat_2,
550 .enhanced_sort,
551 .execution_hint,
552 .fast_serialization,
553 .fp_extension,
554 .guarded_storage,
555 .high_word,
556 .insert_reference_bits_multiple,
557 .interlocked_access1,
558 .load_and_trap,
559 .load_and_zero_rightmost_byte,
560 .load_store_on_cond,
561 .load_store_on_cond_2,
562 .message_security_assist_extension3,
563 .message_security_assist_extension4,
564 .message_security_assist_extension5,
565 .message_security_assist_extension7,
566 .message_security_assist_extension8,
567 .message_security_assist_extension9,
568 .miscellaneous_extensions,
569 .miscellaneous_extensions_2,
570 .miscellaneous_extensions_3,
571 .population_count,
572 .processor_assist,
573 .reset_reference_bits_multiple,
574 .transactional_execution,
575 .vector,
576 .vector_enhancements_1,
577 .vector_enhancements_2,
578 .vector_packed_decimal,
579 .vector_packed_decimal_enhancement,
580 }),
581 };
582 pub const z196 = CpuModel{
583 .name = "z196",
584 .llvm_name = "z196",
585 .features = featureSet(&[_]Feature{
586 .distinct_ops,
587 .fast_serialization,
588 .fp_extension,
589 .high_word,
590 .interlocked_access1,
591 .load_store_on_cond,
592 .message_security_assist_extension3,
593 .message_security_assist_extension4,
594 .population_count,
595 .reset_reference_bits_multiple,
596 }),
597 };
598 pub const zEC12 = CpuModel{
599 .name = "zEC12",
600 .llvm_name = "zEC12",
601 .features = featureSet(&[_]Feature{
602 .dfp_zoned_conversion,
603 .distinct_ops,
604 .enhanced_dat_2,
605 .execution_hint,
606 .fast_serialization,
607 .fp_extension,
608 .high_word,
609 .interlocked_access1,
610 .load_and_trap,
611 .load_store_on_cond,
612 .message_security_assist_extension3,
613 .message_security_assist_extension4,
614 .miscellaneous_extensions,
615 .population_count,
616 .processor_assist,
617 .reset_reference_bits_multiple,
618 .transactional_execution,
619 }),
620 };
621};
tools/update_cpu_features.zig+1-1
...@@ -793,7 +793,7 @@ const llvm_targets = [_]LlvmTarget{...@@ -793,7 +793,7 @@ const llvm_targets = [_]LlvmTarget{
793 .td_name = "Sparc.td",793 .td_name = "Sparc.td",
794 },794 },
795 .{795 .{
796 .zig_name = "systemz",796 .zig_name = "s390x",
797 .llvm_name = "SystemZ",797 .llvm_name = "SystemZ",
798 .td_name = "SystemZ.td",798 .td_name = "SystemZ.td",
799 },799 },