@@ -207,375 +207,17 @@ Type *EVT::getTypeForEVT(LLVMContext &Context) const {
207
207
assert (isExtended () && " Type is not extended!" );
208
208
return LLVMTy;
209
209
case MVT::isVoid: return Type::getVoidTy (Context);
210
- case MVT::i1: return Type::getInt1Ty (Context);
211
- case MVT::i2: return Type::getIntNTy (Context, 2 );
212
- case MVT::i4: return Type::getIntNTy (Context, 4 );
213
- case MVT::i8: return Type::getInt8Ty (Context);
214
- case MVT::i16: return Type::getInt16Ty (Context);
215
- case MVT::i32: return Type::getInt32Ty (Context);
216
- case MVT::i64: return Type::getInt64Ty (Context);
217
- case MVT::i128: return IntegerType::get (Context, 128 );
218
- case MVT::f16: return Type::getHalfTy (Context);
219
- case MVT::bf16: return Type::getBFloatTy (Context);
220
- case MVT::f32: return Type::getFloatTy (Context);
221
- case MVT::f64: return Type::getDoubleTy (Context);
222
- case MVT::f80: return Type::getX86_FP80Ty (Context);
223
- case MVT::f128: return Type::getFP128Ty (Context);
224
- case MVT::ppcf128: return Type::getPPC_FP128Ty (Context);
225
210
case MVT::x86mmx: return Type::getX86_MMXTy (Context);
226
211
case MVT::aarch64svcount:
227
212
return TargetExtType::get (Context, " aarch64.svcount" );
228
213
case MVT::x86amx: return Type::getX86_AMXTy (Context);
229
214
case MVT::i64x8: return IntegerType::get (Context, 512 );
230
215
case MVT::externref: return Type::getWasm_ExternrefTy (Context);
231
216
case MVT::funcref: return Type::getWasm_FuncrefTy (Context);
232
- case MVT::v1i1:
233
- return FixedVectorType::get (Type::getInt1Ty (Context), 1 );
234
- case MVT::v2i1:
235
- return FixedVectorType::get (Type::getInt1Ty (Context), 2 );
236
- case MVT::v3i1:
237
- return FixedVectorType::get (Type::getInt1Ty (Context), 3 );
238
- case MVT::v4i1:
239
- return FixedVectorType::get (Type::getInt1Ty (Context), 4 );
240
- case MVT::v8i1:
241
- return FixedVectorType::get (Type::getInt1Ty (Context), 8 );
242
- case MVT::v16i1:
243
- return FixedVectorType::get (Type::getInt1Ty (Context), 16 );
244
- case MVT::v32i1:
245
- return FixedVectorType::get (Type::getInt1Ty (Context), 32 );
246
- case MVT::v64i1:
247
- return FixedVectorType::get (Type::getInt1Ty (Context), 64 );
248
- case MVT::v128i1:
249
- return FixedVectorType::get (Type::getInt1Ty (Context), 128 );
250
- case MVT::v256i1:
251
- return FixedVectorType::get (Type::getInt1Ty (Context), 256 );
252
- case MVT::v512i1:
253
- return FixedVectorType::get (Type::getInt1Ty (Context), 512 );
254
- case MVT::v1024i1:
255
- return FixedVectorType::get (Type::getInt1Ty (Context), 1024 );
256
- case MVT::v2048i1:
257
- return FixedVectorType::get (Type::getInt1Ty (Context), 2048 );
258
- case MVT::v128i2:
259
- return FixedVectorType::get (Type::getIntNTy (Context, 2 ), 128 );
260
- case MVT::v256i2:
261
- return FixedVectorType::get (Type::getIntNTy (Context, 2 ), 256 );
262
- case MVT::v64i4:
263
- return FixedVectorType::get (Type::getIntNTy (Context, 4 ), 64 );
264
- case MVT::v128i4:
265
- return FixedVectorType::get (Type::getIntNTy (Context, 4 ), 128 );
266
- case MVT::v1i8:
267
- return FixedVectorType::get (Type::getInt8Ty (Context), 1 );
268
- case MVT::v2i8:
269
- return FixedVectorType::get (Type::getInt8Ty (Context), 2 );
270
- case MVT::v3i8:
271
- return FixedVectorType::get (Type::getInt8Ty (Context), 3 );
272
- case MVT::v4i8:
273
- return FixedVectorType::get (Type::getInt8Ty (Context), 4 );
274
- case MVT::v8i8:
275
- return FixedVectorType::get (Type::getInt8Ty (Context), 8 );
276
- case MVT::v16i8:
277
- return FixedVectorType::get (Type::getInt8Ty (Context), 16 );
278
- case MVT::v32i8:
279
- return FixedVectorType::get (Type::getInt8Ty (Context), 32 );
280
- case MVT::v64i8:
281
- return FixedVectorType::get (Type::getInt8Ty (Context), 64 );
282
- case MVT::v128i8:
283
- return FixedVectorType::get (Type::getInt8Ty (Context), 128 );
284
- case MVT::v256i8:
285
- return FixedVectorType::get (Type::getInt8Ty (Context), 256 );
286
- case MVT::v512i8:
287
- return FixedVectorType::get (Type::getInt8Ty (Context), 512 );
288
- case MVT::v1024i8:
289
- return FixedVectorType::get (Type::getInt8Ty (Context), 1024 );
290
- case MVT::v1i16:
291
- return FixedVectorType::get (Type::getInt16Ty (Context), 1 );
292
- case MVT::v2i16:
293
- return FixedVectorType::get (Type::getInt16Ty (Context), 2 );
294
- case MVT::v3i16:
295
- return FixedVectorType::get (Type::getInt16Ty (Context), 3 );
296
- case MVT::v4i16:
297
- return FixedVectorType::get (Type::getInt16Ty (Context), 4 );
298
- case MVT::v8i16:
299
- return FixedVectorType::get (Type::getInt16Ty (Context), 8 );
300
- case MVT::v16i16:
301
- return FixedVectorType::get (Type::getInt16Ty (Context), 16 );
302
- case MVT::v32i16:
303
- return FixedVectorType::get (Type::getInt16Ty (Context), 32 );
304
- case MVT::v64i16:
305
- return FixedVectorType::get (Type::getInt16Ty (Context), 64 );
306
- case MVT::v128i16:
307
- return FixedVectorType::get (Type::getInt16Ty (Context), 128 );
308
- case MVT::v256i16:
309
- return FixedVectorType::get (Type::getInt16Ty (Context), 256 );
310
- case MVT::v512i16:
311
- return FixedVectorType::get (Type::getInt16Ty (Context), 512 );
312
- case MVT::v1i32:
313
- return FixedVectorType::get (Type::getInt32Ty (Context), 1 );
314
- case MVT::v2i32:
315
- return FixedVectorType::get (Type::getInt32Ty (Context), 2 );
316
- case MVT::v3i32:
317
- return FixedVectorType::get (Type::getInt32Ty (Context), 3 );
318
- case MVT::v4i32:
319
- return FixedVectorType::get (Type::getInt32Ty (Context), 4 );
320
- case MVT::v5i32:
321
- return FixedVectorType::get (Type::getInt32Ty (Context), 5 );
322
- case MVT::v6i32:
323
- return FixedVectorType::get (Type::getInt32Ty (Context), 6 );
324
- case MVT::v7i32:
325
- return FixedVectorType::get (Type::getInt32Ty (Context), 7 );
326
- case MVT::v8i32:
327
- return FixedVectorType::get (Type::getInt32Ty (Context), 8 );
328
- case MVT::v9i32:
329
- return FixedVectorType::get (Type::getInt32Ty (Context), 9 );
330
- case MVT::v10i32:
331
- return FixedVectorType::get (Type::getInt32Ty (Context), 10 );
332
- case MVT::v11i32:
333
- return FixedVectorType::get (Type::getInt32Ty (Context), 11 );
334
- case MVT::v12i32:
335
- return FixedVectorType::get (Type::getInt32Ty (Context), 12 );
336
- case MVT::v16i32:
337
- return FixedVectorType::get (Type::getInt32Ty (Context), 16 );
338
- case MVT::v32i32:
339
- return FixedVectorType::get (Type::getInt32Ty (Context), 32 );
340
- case MVT::v64i32:
341
- return FixedVectorType::get (Type::getInt32Ty (Context), 64 );
342
- case MVT::v128i32:
343
- return FixedVectorType::get (Type::getInt32Ty (Context), 128 );
344
- case MVT::v256i32:
345
- return FixedVectorType::get (Type::getInt32Ty (Context), 256 );
346
- case MVT::v512i32:
347
- return FixedVectorType::get (Type::getInt32Ty (Context), 512 );
348
- case MVT::v1024i32:
349
- return FixedVectorType::get (Type::getInt32Ty (Context), 1024 );
350
- case MVT::v2048i32:
351
- return FixedVectorType::get (Type::getInt32Ty (Context), 2048 );
352
- case MVT::v1i64:
353
- return FixedVectorType::get (Type::getInt64Ty (Context), 1 );
354
- case MVT::v2i64:
355
- return FixedVectorType::get (Type::getInt64Ty (Context), 2 );
356
- case MVT::v3i64:
357
- return FixedVectorType::get (Type::getInt64Ty (Context), 3 );
358
- case MVT::v4i64:
359
- return FixedVectorType::get (Type::getInt64Ty (Context), 4 );
360
- case MVT::v8i64:
361
- return FixedVectorType::get (Type::getInt64Ty (Context), 8 );
362
- case MVT::v16i64:
363
- return FixedVectorType::get (Type::getInt64Ty (Context), 16 );
364
- case MVT::v32i64:
365
- return FixedVectorType::get (Type::getInt64Ty (Context), 32 );
366
- case MVT::v64i64:
367
- return FixedVectorType::get (Type::getInt64Ty (Context), 64 );
368
- case MVT::v128i64:
369
- return FixedVectorType::get (Type::getInt64Ty (Context), 128 );
370
- case MVT::v256i64:
371
- return FixedVectorType::get (Type::getInt64Ty (Context), 256 );
372
- case MVT::v1i128:
373
- return FixedVectorType::get (Type::getInt128Ty (Context), 1 );
374
- case MVT::v1f16:
375
- return FixedVectorType::get (Type::getHalfTy (Context), 1 );
376
- case MVT::v2f16:
377
- return FixedVectorType::get (Type::getHalfTy (Context), 2 );
378
- case MVT::v3f16:
379
- return FixedVectorType::get (Type::getHalfTy (Context), 3 );
380
- case MVT::v4f16:
381
- return FixedVectorType::get (Type::getHalfTy (Context), 4 );
382
- case MVT::v8f16:
383
- return FixedVectorType::get (Type::getHalfTy (Context), 8 );
384
- case MVT::v16f16:
385
- return FixedVectorType::get (Type::getHalfTy (Context), 16 );
386
- case MVT::v32f16:
387
- return FixedVectorType::get (Type::getHalfTy (Context), 32 );
388
- case MVT::v64f16:
389
- return FixedVectorType::get (Type::getHalfTy (Context), 64 );
390
- case MVT::v128f16:
391
- return FixedVectorType::get (Type::getHalfTy (Context), 128 );
392
- case MVT::v256f16:
393
- return FixedVectorType::get (Type::getHalfTy (Context), 256 );
394
- case MVT::v512f16:
395
- return FixedVectorType::get (Type::getHalfTy (Context), 512 );
396
- case MVT::v2bf16:
397
- return FixedVectorType::get (Type::getBFloatTy (Context), 2 );
398
- case MVT::v3bf16:
399
- return FixedVectorType::get (Type::getBFloatTy (Context), 3 );
400
- case MVT::v4bf16:
401
- return FixedVectorType::get (Type::getBFloatTy (Context), 4 );
402
- case MVT::v8bf16:
403
- return FixedVectorType::get (Type::getBFloatTy (Context), 8 );
404
- case MVT::v16bf16:
405
- return FixedVectorType::get (Type::getBFloatTy (Context), 16 );
406
- case MVT::v32bf16:
407
- return FixedVectorType::get (Type::getBFloatTy (Context), 32 );
408
- case MVT::v64bf16:
409
- return FixedVectorType::get (Type::getBFloatTy (Context), 64 );
410
- case MVT::v128bf16:
411
- return FixedVectorType::get (Type::getBFloatTy (Context), 128 );
412
- case MVT::v1f32:
413
- return FixedVectorType::get (Type::getFloatTy (Context), 1 );
414
- case MVT::v2f32:
415
- return FixedVectorType::get (Type::getFloatTy (Context), 2 );
416
- case MVT::v3f32:
417
- return FixedVectorType::get (Type::getFloatTy (Context), 3 );
418
- case MVT::v4f32:
419
- return FixedVectorType::get (Type::getFloatTy (Context), 4 );
420
- case MVT::v5f32:
421
- return FixedVectorType::get (Type::getFloatTy (Context), 5 );
422
- case MVT::v6f32:
423
- return FixedVectorType::get (Type::getFloatTy (Context), 6 );
424
- case MVT::v7f32:
425
- return FixedVectorType::get (Type::getFloatTy (Context), 7 );
426
- case MVT::v8f32:
427
- return FixedVectorType::get (Type::getFloatTy (Context), 8 );
428
- case MVT::v9f32:
429
- return FixedVectorType::get (Type::getFloatTy (Context), 9 );
430
- case MVT::v10f32:
431
- return FixedVectorType::get (Type::getFloatTy (Context), 10 );
432
- case MVT::v11f32:
433
- return FixedVectorType::get (Type::getFloatTy (Context), 11 );
434
- case MVT::v12f32:
435
- return FixedVectorType::get (Type::getFloatTy (Context), 12 );
436
- case MVT::v16f32:
437
- return FixedVectorType::get (Type::getFloatTy (Context), 16 );
438
- case MVT::v32f32:
439
- return FixedVectorType::get (Type::getFloatTy (Context), 32 );
440
- case MVT::v64f32:
441
- return FixedVectorType::get (Type::getFloatTy (Context), 64 );
442
- case MVT::v128f32:
443
- return FixedVectorType::get (Type::getFloatTy (Context), 128 );
444
- case MVT::v256f32:
445
- return FixedVectorType::get (Type::getFloatTy (Context), 256 );
446
- case MVT::v512f32:
447
- return FixedVectorType::get (Type::getFloatTy (Context), 512 );
448
- case MVT::v1024f32:
449
- return FixedVectorType::get (Type::getFloatTy (Context), 1024 );
450
- case MVT::v2048f32:
451
- return FixedVectorType::get (Type::getFloatTy (Context), 2048 );
452
- case MVT::v1f64:
453
- return FixedVectorType::get (Type::getDoubleTy (Context), 1 );
454
- case MVT::v2f64:
455
- return FixedVectorType::get (Type::getDoubleTy (Context), 2 );
456
- case MVT::v3f64:
457
- return FixedVectorType::get (Type::getDoubleTy (Context), 3 );
458
- case MVT::v4f64:
459
- return FixedVectorType::get (Type::getDoubleTy (Context), 4 );
460
- case MVT::v8f64:
461
- return FixedVectorType::get (Type::getDoubleTy (Context), 8 );
462
- case MVT::v16f64:
463
- return FixedVectorType::get (Type::getDoubleTy (Context), 16 );
464
- case MVT::v32f64:
465
- return FixedVectorType::get (Type::getDoubleTy (Context), 32 );
466
- case MVT::v64f64:
467
- return FixedVectorType::get (Type::getDoubleTy (Context), 64 );
468
- case MVT::v128f64:
469
- return FixedVectorType::get (Type::getDoubleTy (Context), 128 );
470
- case MVT::v256f64:
471
- return FixedVectorType::get (Type::getDoubleTy (Context), 256 );
472
- case MVT::nxv1i1:
473
- return ScalableVectorType::get (Type::getInt1Ty (Context), 1 );
474
- case MVT::nxv2i1:
475
- return ScalableVectorType::get (Type::getInt1Ty (Context), 2 );
476
- case MVT::nxv4i1:
477
- return ScalableVectorType::get (Type::getInt1Ty (Context), 4 );
478
- case MVT::nxv8i1:
479
- return ScalableVectorType::get (Type::getInt1Ty (Context), 8 );
480
- case MVT::nxv16i1:
481
- return ScalableVectorType::get (Type::getInt1Ty (Context), 16 );
482
- case MVT::nxv32i1:
483
- return ScalableVectorType::get (Type::getInt1Ty (Context), 32 );
484
- case MVT::nxv64i1:
485
- return ScalableVectorType::get (Type::getInt1Ty (Context), 64 );
486
- case MVT::nxv1i8:
487
- return ScalableVectorType::get (Type::getInt8Ty (Context), 1 );
488
- case MVT::nxv2i8:
489
- return ScalableVectorType::get (Type::getInt8Ty (Context), 2 );
490
- case MVT::nxv4i8:
491
- return ScalableVectorType::get (Type::getInt8Ty (Context), 4 );
492
- case MVT::nxv8i8:
493
- return ScalableVectorType::get (Type::getInt8Ty (Context), 8 );
494
- case MVT::nxv16i8:
495
- return ScalableVectorType::get (Type::getInt8Ty (Context), 16 );
496
- case MVT::nxv32i8:
497
- return ScalableVectorType::get (Type::getInt8Ty (Context), 32 );
498
- case MVT::nxv64i8:
499
- return ScalableVectorType::get (Type::getInt8Ty (Context), 64 );
500
- case MVT::nxv1i16:
501
- return ScalableVectorType::get (Type::getInt16Ty (Context), 1 );
502
- case MVT::nxv2i16:
503
- return ScalableVectorType::get (Type::getInt16Ty (Context), 2 );
504
- case MVT::nxv4i16:
505
- return ScalableVectorType::get (Type::getInt16Ty (Context), 4 );
506
- case MVT::nxv8i16:
507
- return ScalableVectorType::get (Type::getInt16Ty (Context), 8 );
508
- case MVT::nxv16i16:
509
- return ScalableVectorType::get (Type::getInt16Ty (Context), 16 );
510
- case MVT::nxv32i16:
511
- return ScalableVectorType::get (Type::getInt16Ty (Context), 32 );
512
- case MVT::nxv1i32:
513
- return ScalableVectorType::get (Type::getInt32Ty (Context), 1 );
514
- case MVT::nxv2i32:
515
- return ScalableVectorType::get (Type::getInt32Ty (Context), 2 );
516
- case MVT::nxv4i32:
517
- return ScalableVectorType::get (Type::getInt32Ty (Context), 4 );
518
- case MVT::nxv8i32:
519
- return ScalableVectorType::get (Type::getInt32Ty (Context), 8 );
520
- case MVT::nxv16i32:
521
- return ScalableVectorType::get (Type::getInt32Ty (Context), 16 );
522
- case MVT::nxv32i32:
523
- return ScalableVectorType::get (Type::getInt32Ty (Context), 32 );
524
- case MVT::nxv1i64:
525
- return ScalableVectorType::get (Type::getInt64Ty (Context), 1 );
526
- case MVT::nxv2i64:
527
- return ScalableVectorType::get (Type::getInt64Ty (Context), 2 );
528
- case MVT::nxv4i64:
529
- return ScalableVectorType::get (Type::getInt64Ty (Context), 4 );
530
- case MVT::nxv8i64:
531
- return ScalableVectorType::get (Type::getInt64Ty (Context), 8 );
532
- case MVT::nxv16i64:
533
- return ScalableVectorType::get (Type::getInt64Ty (Context), 16 );
534
- case MVT::nxv32i64:
535
- return ScalableVectorType::get (Type::getInt64Ty (Context), 32 );
536
- case MVT::nxv1f16:
537
- return ScalableVectorType::get (Type::getHalfTy (Context), 1 );
538
- case MVT::nxv2f16:
539
- return ScalableVectorType::get (Type::getHalfTy (Context), 2 );
540
- case MVT::nxv4f16:
541
- return ScalableVectorType::get (Type::getHalfTy (Context), 4 );
542
- case MVT::nxv8f16:
543
- return ScalableVectorType::get (Type::getHalfTy (Context), 8 );
544
- case MVT::nxv16f16:
545
- return ScalableVectorType::get (Type::getHalfTy (Context), 16 );
546
- case MVT::nxv32f16:
547
- return ScalableVectorType::get (Type::getHalfTy (Context), 32 );
548
- case MVT::nxv1bf16:
549
- return ScalableVectorType::get (Type::getBFloatTy (Context), 1 );
550
- case MVT::nxv2bf16:
551
- return ScalableVectorType::get (Type::getBFloatTy (Context), 2 );
552
- case MVT::nxv4bf16:
553
- return ScalableVectorType::get (Type::getBFloatTy (Context), 4 );
554
- case MVT::nxv8bf16:
555
- return ScalableVectorType::get (Type::getBFloatTy (Context), 8 );
556
- case MVT::nxv16bf16:
557
- return ScalableVectorType::get (Type::getBFloatTy (Context), 16 );
558
- case MVT::nxv32bf16:
559
- return ScalableVectorType::get (Type::getBFloatTy (Context), 32 );
560
- case MVT::nxv1f32:
561
- return ScalableVectorType::get (Type::getFloatTy (Context), 1 );
562
- case MVT::nxv2f32:
563
- return ScalableVectorType::get (Type::getFloatTy (Context), 2 );
564
- case MVT::nxv4f32:
565
- return ScalableVectorType::get (Type::getFloatTy (Context), 4 );
566
- case MVT::nxv8f32:
567
- return ScalableVectorType::get (Type::getFloatTy (Context), 8 );
568
- case MVT::nxv16f32:
569
- return ScalableVectorType::get (Type::getFloatTy (Context), 16 );
570
- case MVT::nxv1f64:
571
- return ScalableVectorType::get (Type::getDoubleTy (Context), 1 );
572
- case MVT::nxv2f64:
573
- return ScalableVectorType::get (Type::getDoubleTy (Context), 2 );
574
- case MVT::nxv4f64:
575
- return ScalableVectorType::get (Type::getDoubleTy (Context), 4 );
576
- case MVT::nxv8f64:
577
- return ScalableVectorType::get (Type::getDoubleTy (Context), 8 );
578
217
case MVT::Metadata: return Type::getMetadataTy (Context);
218
+ #define GET_VT_EVT (Ty, EVT ) case MVT::Ty: return EVT;
219
+ #include " llvm/CodeGen/GenVT.inc"
220
+ #undef GET_VT_EVT
579
221
}
580
222
// clang-format on
581
223
}
0 commit comments