File tree 2 files changed +115
-4
lines changed
2 files changed +115
-4
lines changed Original file line number Diff line number Diff line change @@ -57,6 +57,13 @@ function generate_dict()
57
57
end
58
58
end
59
59
end
60
+ if name == " bmi1"
61
+ # `tzcnt` can be legally emitted by compilers in some cases even when
62
+ # the BMI1 feature is not available, so do not audit it.
63
+ #
64
+ # see: https://stackoverflow.com/questions/61422827/does-x64-support-imply-bmi1-support
65
+ deleteat! (instructions, findfirst (== (" tzcnt" ), instructions))
66
+ end
60
67
dict[name] = instructions
61
68
end
62
69
free (xml)
Original file line number Diff line number Diff line change 200
200
" pmulld" ,
201
201
" popcnt" ,
202
202
" ptest" ,
203
- " rex crc32" ,
204
203
" roundpd" ,
205
204
" roundps" ,
206
205
" roundsd" ,
301
300
" v4fmaddss" ,
302
301
" v4fnmaddps" ,
303
302
" v4fnmaddss" ,
303
+ " vaddph" ,
304
+ " vaddsh" ,
304
305
" vaesdec" ,
305
306
" vaesdeclast" ,
306
307
" vaesenc" ,
319
320
" vbroadcasti32x8" ,
320
321
" vbroadcasti64x2" ,
321
322
" vbroadcasti64x4" ,
323
+ " vcmpph" ,
324
+ " vcmpsh" ,
325
+ " vcomish" ,
322
326
" vcompresspd" ,
323
327
" vcompressps" ,
328
+ " vcvtdq2ph" ,
324
329
" vcvtne2ps2bf16" ,
325
330
" vcvtneps2bf16" ,
331
+ " vcvtpd2ph" ,
326
332
" vcvtpd2qq" ,
327
333
" vcvtpd2udq" ,
328
334
" vcvtpd2uqq" ,
335
+ " vcvtph2dq" ,
336
+ " vcvtph2pd" ,
337
+ " vcvtph2psx" ,
338
+ " vcvtph2qq" ,
339
+ " vcvtph2udq" ,
340
+ " vcvtph2uqq" ,
341
+ " vcvtph2uw" ,
342
+ " vcvtph2w" ,
343
+ " vcvtps2phx" ,
329
344
" vcvtps2qq" ,
330
345
" vcvtps2udq" ,
331
346
" vcvtps2uqq" ,
332
347
" vcvtqq2pd" ,
348
+ " vcvtqq2ph" ,
333
349
" vcvtqq2ps" ,
350
+ " vcvtsd2sh" ,
334
351
" vcvtsd2usi" ,
352
+ " vcvtsh2sd" ,
353
+ " vcvtsh2si" ,
354
+ " vcvtsh2ss" ,
355
+ " vcvtsh2usi" ,
356
+ " vcvtsi2sh" ,
357
+ " vcvtss2sh" ,
335
358
" vcvtss2usi" ,
336
359
" vcvttpd2qq" ,
337
360
" vcvttpd2udq" ,
338
361
" vcvttpd2uqq" ,
362
+ " vcvttph2dq" ,
363
+ " vcvttph2qq" ,
364
+ " vcvttph2udq" ,
365
+ " vcvttph2uqq" ,
366
+ " vcvttph2uw" ,
367
+ " vcvttph2w" ,
339
368
" vcvttps2qq" ,
340
369
" vcvttps2udq" ,
341
370
" vcvttps2uqq" ,
342
371
" vcvttsd2usi" ,
372
+ " vcvttsh2si" ,
373
+ " vcvttsh2usi" ,
343
374
" vcvttss2usi" ,
344
375
" vcvtudq2pd" ,
376
+ " vcvtudq2ph" ,
345
377
" vcvtudq2ps" ,
346
378
" vcvtuqq2pd" ,
379
+ " vcvtuqq2ph" ,
347
380
" vcvtuqq2ps" ,
348
381
" vcvtusi2sd" ,
382
+ " vcvtusi2sh" ,
349
383
" vcvtusi2ss" ,
384
+ " vcvtuw2ph" ,
385
+ " vcvtw2ph" ,
350
386
" vdbpsadbw" ,
387
+ " vdivph" ,
388
+ " vdivsh" ,
351
389
" vdpbf16ps" ,
352
390
" vexp2pd" ,
353
391
" vexp2ps" ,
361
399
" vextracti32x8" ,
362
400
" vextracti64x2" ,
363
401
" vextracti64x4" ,
402
+ " vfcmaddcph" ,
403
+ " vfcmaddcsh" ,
404
+ " vfcmulcph" ,
405
+ " vfcmulcsh" ,
364
406
" vfixupimmpd" ,
365
407
" vfixupimmps" ,
366
408
" vfixupimmsd" ,
367
409
" vfixupimmss" ,
410
+ " vfmadd132ph" ,
411
+ " vfmadd132sh" ,
412
+ " vfmadd213ph" ,
413
+ " vfmadd213sh" ,
414
+ " vfmadd231ph" ,
415
+ " vfmadd231sh" ,
416
+ " vfmaddcph" ,
417
+ " vfmaddcsh" ,
418
+ " vfmaddsub132ph" ,
419
+ " vfmaddsub213ph" ,
420
+ " vfmaddsub231ph" ,
421
+ " vfmsub132ph" ,
422
+ " vfmsub132sh" ,
423
+ " vfmsub213ph" ,
424
+ " vfmsub213sh" ,
425
+ " vfmsub231ph" ,
426
+ " vfmsub231sh" ,
427
+ " vfmsubadd132ph" ,
428
+ " vfmsubadd213ph" ,
429
+ " vfmsubadd231ph" ,
430
+ " vfmulcph" ,
431
+ " vfmulcsh" ,
432
+ " vfnmadd132ph" ,
433
+ " vfnmadd132sh" ,
434
+ " vfnmadd213ph" ,
435
+ " vfnmadd213sh" ,
436
+ " vfnmadd231ph" ,
437
+ " vfnmadd231sh" ,
438
+ " vfnmsub132ph" ,
439
+ " vfnmsub132sh" ,
440
+ " vfnmsub213ph" ,
441
+ " vfnmsub213sh" ,
442
+ " vfnmsub231ph" ,
443
+ " vfnmsub231sh" ,
368
444
" vfpclasspd" ,
445
+ " vfpclassph" ,
369
446
" vfpclassps" ,
370
447
" vfpclasssd" ,
448
+ " vfpclasssh" ,
371
449
" vfpclassss" ,
372
450
" vgatherdpd" ,
373
451
" vgatherdps" ,
382
460
" vgatherqpd" ,
383
461
" vgatherqps" ,
384
462
" vgetexppd" ,
463
+ " vgetexpph" ,
385
464
" vgetexpps" ,
386
465
" vgetexpsd" ,
466
+ " vgetexpsh" ,
387
467
" vgetexpss" ,
388
468
" vgetmantpd" ,
469
+ " vgetmantph" ,
389
470
" vgetmantps" ,
390
471
" vgetmantsd" ,
472
+ " vgetmantsh" ,
391
473
" vgetmantss" ,
392
474
" vgf2p8affineinvqb" ,
393
475
" vgf2p8affineqb" ,
400
482
" vinserti32x8" ,
401
483
" vinserti64x2" ,
402
484
" vinserti64x4" ,
485
+ " vmaxph" ,
486
+ " vmaxsh" ,
487
+ " vminph" ,
488
+ " vminsh" ,
403
489
" vmovdqa32" ,
404
490
" vmovdqa64" ,
405
491
" vmovdqu16" ,
406
492
" vmovdqu32" ,
407
493
" vmovdqu64" ,
408
494
" vmovdqu8" ,
495
+ " vmovsh" ,
496
+ " vmovw" ,
497
+ " vmulph" ,
498
+ " vmulsh" ,
409
499
" vp2intersectd" ,
410
500
" vp2intersectq" ,
411
501
" vp4dpwssd" ,
557
647
" vrcp28ps" ,
558
648
" vrcp28sd" ,
559
649
" vrcp28ss" ,
650
+ " vrcpph" ,
651
+ " vrcpsh" ,
560
652
" vreducepd" ,
653
+ " vreduceph" ,
561
654
" vreduceps" ,
562
655
" vreducesd" ,
656
+ " vreducesh" ,
563
657
" vreducess" ,
564
658
" vrndscalepd" ,
659
+ " vrndscaleph" ,
565
660
" vrndscaleps" ,
566
661
" vrndscalesd" ,
662
+ " vrndscalesh" ,
567
663
" vrndscaless" ,
568
664
" vrsqrt14pd" ,
569
665
" vrsqrt14ps" ,
573
669
" vrsqrt28ps" ,
574
670
" vrsqrt28sd" ,
575
671
" vrsqrt28ss" ,
672
+ " vrsqrtph" ,
673
+ " vrsqrtsh" ,
576
674
" vscalefpd" ,
675
+ " vscalefph" ,
577
676
" vscalefps" ,
578
677
" vscalefsd" ,
678
+ " vscalefsh" ,
579
679
" vscalefss" ,
580
680
" vscatterdpd" ,
581
681
" vscatterdps" ,
592
692
" vshuff32x4" ,
593
693
" vshuff64x2" ,
594
694
" vshufi32x4" ,
595
- " vshufi64x2"
695
+ " vshufi64x2" ,
696
+ " vsqrtph" ,
697
+ " vsqrtsh" ,
698
+ " vsubph" ,
699
+ " vsubsh" ,
700
+ " vucomish"
596
701
],
597
702
"f16c" : [
598
703
" vcvtph2ps" ,
1035
1140
" bextr" ,
1036
1141
" blsi" ,
1037
1142
" blsmsk" ,
1038
- " blsr" ,
1039
- " tzcnt"
1143
+ " blsr"
1040
1144
],
1041
1145
"adcx" : []
1042
1146
}
You can’t perform that action at this time.
0 commit comments