Browse Source

Add x86 instruction sets SHA512, SM3, GFNI. Pseudo-ops for VCMP*, VPCMP*.

Margers 3 months ago
parent
commit
992532d565

+ 122 - 2
compiler/i386/i386att.inc

@@ -777,6 +777,70 @@
 'vcmpge_oqpd',
 'vcmpgt_oqpd',
 'vcmptrue_uspd',
+'vcmpeqsd',
+'vcmpltsd',
+'vcmplesd',
+'vcmpunordsd',
+'vcmpneqsd',
+'vcmpnltsd',
+'vcmpnlesd',
+'vcmpordsd',
+'vcmpeq_uqsd',
+'vcmpngesd',
+'vcmpngtsd',
+'vcmpfalsesd',
+'vcmpneq_oqsd',
+'vcmpgesd',
+'vcmpgtsd',
+'vcmptruesd',
+'vcmpeq_ossd',
+'vcmplt_oqsd',
+'vcmple_oqsd',
+'vcmpunord_ssd',
+'vcmpneq_ussd',
+'vcmpnlt_uqsd',
+'vcmpnle_uqsd',
+'vcmpord_ssd',
+'vcmpeq_ussd',
+'vcmpnge_uqsd',
+'vcmpngt_uqsd',
+'vcmpfalse_ossd',
+'vcmpneq_ossd',
+'vcmpge_oqsd',
+'vcmpgt_oqsd',
+'vcmptrue_ussd',
+'vcmpeqss',
+'vcmpltss',
+'vcmpless',
+'vcmpunordss',
+'vcmpneqss',
+'vcmpnltss',
+'vcmpnless',
+'vcmpordss',
+'vcmpeq_uqss',
+'vcmpngess',
+'vcmpngtss',
+'vcmpfalsess',
+'vcmpneq_oqss',
+'vcmpgess',
+'vcmpgtss',
+'vcmptruess',
+'vcmpeq_osss',
+'vcmplt_oqss',
+'vcmple_oqss',
+'vcmpunord_sss',
+'vcmpneq_usss',
+'vcmpnlt_uqss',
+'vcmpnle_uqss',
+'vcmpord_sss',
+'vcmpeq_usss',
+'vcmpnge_uqss',
+'vcmpngt_uqss',
+'vcmpfalse_osss',
+'vcmpneq_osss',
+'vcmpge_oqss',
+'vcmpgt_oqss',
+'vcmptrue_usss',
 'vcmppd',
 'vcmpps',
 'vcmpsd',
@@ -1209,7 +1273,7 @@
 'vcompresspd',
 'vcompressps',
 'vcvtpd2qq',
-' vcvtpd2udq',
+'vcvtpd2udq',
 'vcvtpd2uqq',
 'vcvtps2qq',
 'vcvtps2udq',
@@ -1284,6 +1348,50 @@
 'vpblendmd',
 'vpblendmq',
 'vpblendmw',
+'vpcmpltb',
+'vpcmpleb',
+'vpcmpneqb',
+'vpcmpnltb',
+'vpcmpnleb',
+'vpcmpltd',
+'vpcmpled',
+'vpcmpneqd',
+'vpcmpnltd',
+'vpcmpnled',
+'vpcmpltq',
+'vpcmpleq',
+'vpcmpneqq',
+'vpcmpnltq',
+'vpcmpnleq',
+'vpcmpequb',
+'vpcmpltub',
+'vpcmpleub',
+'vpcmpnequb',
+'vpcmpnltub',
+'vpcmpnleub',
+'vpcmpequd',
+'vpcmpltud',
+'vpcmpleud',
+'vpcmpnequd',
+'vpcmpnltud',
+'vpcmpmleud',
+'vpcmpequq',
+'vpcmpltuq',
+'vpcmpleuq',
+'vpcmpnequq',
+'vpcmpnltuq',
+'vpcmpnleuq',
+'vpcmpequw',
+'vpcmpltuw',
+'vpcmpleuw',
+'vpcmpnequw',
+'vpcmpnltuw',
+'vpcmpnleuw',
+'vpcmpltw',
+'vpcmplew',
+'vpcmpneqw',
+'vpcmpnltw',
+'vpcmpnlew',
 'vpcmpb',
 'vpcmpd',
 'vpcmpq',
@@ -1450,5 +1558,17 @@
 'sha1msg2',
 'sha256rnds2',
 'sha256msg1',
-'sha256msg2'
+'sha256msg2',
+'vsha512rnds2',
+'vsha512msg1',
+'vsha512msg2',
+'vsm3rnds2',
+'vsm3msg1',
+'vsm3msg2',
+'vgf2p8affineinvqb',
+'vgf2p8affineqb',
+'vgf2p8mulb',
+'gf2p8affineinvqb',
+'gf2p8affineqb',
+'gf2p8mulb'
 );

+ 120 - 0
compiler/i386/i386atts.inc

@@ -785,6 +785,70 @@ attsufNONE,
 attsufNONE,
 attsufNONE,
 attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
 attsufMMX,
 attsufMMX,
 attsufNONE,
@@ -1450,5 +1514,61 @@ attsufNONE,
 attsufNONE,
 attsufNONE,
 attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
 attsufNONE
 );

+ 121 - 1
compiler/i386/i386int.inc

@@ -777,6 +777,70 @@
 'vcmpge_oqpd',
 'vcmpgt_oqpd',
 'vcmptrue_uspd',
+'vcmpeqsd',
+'vcmpltsd',
+'vcmplesd',
+'vcmpunordsd',
+'vcmpneqsd',
+'vcmpnltsd',
+'vcmpnlesd',
+'vcmpordsd',
+'vcmpeq_uqsd',
+'vcmpngesd',
+'vcmpngtsd',
+'vcmpfalsesd',
+'vcmpneq_oqsd',
+'vcmpgesd',
+'vcmpgtsd',
+'vcmptruesd',
+'vcmpeq_ossd',
+'vcmplt_oqsd',
+'vcmple_oqsd',
+'vcmpunord_ssd',
+'vcmpneq_ussd',
+'vcmpnlt_uqsd',
+'vcmpnle_uqsd',
+'vcmpord_ssd',
+'vcmpeq_ussd',
+'vcmpnge_uqsd',
+'vcmpngt_uqsd',
+'vcmpfalse_ossd',
+'vcmpneq_ossd',
+'vcmpge_oqsd',
+'vcmpgt_oqsd',
+'vcmptrue_ussd',
+'vcmpeqss',
+'vcmpltss',
+'vcmpless',
+'vcmpunordss',
+'vcmpneqss',
+'vcmpnltss',
+'vcmpnless',
+'vcmpordss',
+'vcmpeq_uqss',
+'vcmpngess',
+'vcmpngtss',
+'vcmpfalsess',
+'vcmpneq_oqss',
+'vcmpgess',
+'vcmpgtss',
+'vcmptruess',
+'vcmpeq_osss',
+'vcmplt_oqss',
+'vcmple_oqss',
+'vcmpunord_sss',
+'vcmpneq_usss',
+'vcmpnlt_uqss',
+'vcmpnle_uqss',
+'vcmpord_sss',
+'vcmpeq_usss',
+'vcmpnge_uqss',
+'vcmpngt_uqss',
+'vcmpfalse_osss',
+'vcmpneq_osss',
+'vcmpge_oqss',
+'vcmpgt_oqss',
+'vcmptrue_usss',
 'vcmppd',
 'vcmpps',
 'vcmpsd',
@@ -1284,6 +1348,50 @@
 'vpblendmd',
 'vpblendmq',
 'vpblendmw',
+'vpcmpltb',
+'vpcmpleb',
+'vpcmpneqb',
+'vpcmpnltb',
+'vpcmpnleb',
+'vpcmpltd',
+'vpcmpled',
+'vpcmpneqd',
+'vpcmpnltd',
+'vpcmpnled',
+'vpcmpltq',
+'vpcmpleq',
+'vpcmpneqq',
+'vpcmpnltq',
+'vpcmpnleq',
+'vpcmpequb',
+'vpcmpltub',
+'vpcmpleub',
+'vpcmpnequb',
+'vpcmpnltub',
+'vpcmpnleub',
+'vpcmpequd',
+'vpcmpltud',
+'vpcmpleud',
+'vpcmpnequd',
+'vpcmpnltud',
+'vpcmpmleud',
+'vpcmpequq',
+'vpcmpltuq',
+'vpcmpleuq',
+'vpcmpnequq',
+'vpcmpnltuq',
+'vpcmpnleuq',
+'vpcmpequw',
+'vpcmpltuw',
+'vpcmpleuw',
+'vpcmpnequw',
+'vpcmpnltuw',
+'vpcmpnleuw',
+'vpcmpltw',
+'vpcmplew',
+'vpcmpneqw',
+'vpcmpnltw',
+'vpcmpnlew',
 'vpcmpb',
 'vpcmpd',
 'vpcmpq',
@@ -1450,5 +1558,17 @@
 'sha1msg2',
 'sha256rnds2',
 'sha256msg1',
-'sha256msg2'
+'sha256msg2',
+'vsha512rnds2',
+'vsha512msg1',
+'vsha512msg2',
+'vsm3rnds2',
+'vsm3msg1',
+'vsm3msg2',
+'vgf2p8affineinvqb',
+'vgf2p8affineqb',
+'vgf2p8mulb',
+'gf2p8affineinvqb',
+'gf2p8affineqb',
+'gf2p8mulb'
 );

+ 1 - 1
compiler/i386/i386nop.inc

@@ -1,2 +1,2 @@
 { don't edit, this file is generated from x86ins.dat }
-4187;
+5093;

+ 121 - 1
compiler/i386/i386op.inc

@@ -777,6 +777,70 @@ A_VCMPNEQ_OSPD,
 A_VCMPGE_OQPD,
 A_VCMPGT_OQPD,
 A_VCMPTRUE_USPD,
+A_VCMPEQSD,
+A_VCMPLTSD,
+A_VCMPLESD,
+A_VCMPUNORDSD,
+A_VCMPNEQSD,
+A_VCMPNLTSD,
+A_VCMPNLESD,
+A_VCMPORDSD,
+A_VCMPEQ_UQSD,
+A_VCMPNGESD,
+A_VCMPNGTSD,
+A_VCMPFALSESD,
+A_VCMPNEQ_OQSD,
+A_VCMPGESD,
+A_VCMPGTSD,
+A_VCMPTRUESD,
+A_VCMPEQ_OSSD,
+A_VCMPLT_OQSD,
+A_VCMPLE_OQSD,
+A_VCMPUNORD_SSD,
+A_VCMPNEQ_USSD,
+A_VCMPNLT_UQSD,
+A_VCMPNLE_UQSD,
+A_VCMPORD_SSD,
+A_VCMPEQ_USSD,
+A_VCMPNGE_UQSD,
+A_VCMPNGT_UQSD,
+A_VCMPFALSE_OSSD,
+A_VCMPNEQ_OSSD,
+A_VCMPGE_OQSD,
+A_VCMPGT_OQSD,
+A_VCMPTRUE_USSD,
+A_VCMPEQSS,
+A_VCMPLTSS,
+A_VCMPLESS,
+A_VCMPUNORDSS,
+A_VCMPNEQSS,
+A_VCMPNLTSS,
+A_VCMPNLESS,
+A_VCMPORDSS,
+A_VCMPEQ_UQSS,
+A_VCMPNGESS,
+A_VCMPNGTSS,
+A_VCMPFALSESS,
+A_VCMPNEQ_OQSS,
+A_VCMPGESS,
+A_VCMPGTSS,
+A_VCMPTRUESS,
+A_VCMPEQ_OSSS,
+A_VCMPLT_OQSS,
+A_VCMPLE_OQSS,
+A_VCMPUNORD_SSS,
+A_VCMPNEQ_USSS,
+A_VCMPNLT_UQSS,
+A_VCMPNLE_UQSS,
+A_VCMPORD_SSS,
+A_VCMPEQ_USSS,
+A_VCMPNGE_UQSS,
+A_VCMPNGT_UQSS,
+A_VCMPFALSE_OSSS,
+A_VCMPNEQ_OSSS,
+A_VCMPGE_OQSS,
+A_VCMPGT_OQSS,
+A_VCMPTRUE_USSS,
 A_VCMPPD,
 A_VCMPPS,
 A_VCMPSD,
@@ -1284,6 +1348,50 @@ A_VPBLENDMB,
 A_VPBLENDMD,
 A_VPBLENDMQ,
 A_VPBLENDMW,
+A_VPCMPLTB,
+A_VPCMPLEB,
+A_VPCMPNEQB,
+A_VPCMPNLTB,
+A_VPCMPNLEB,
+A_VPCMPLTD,
+A_VPCMPLED,
+A_VPCMPNEQD,
+A_VPCMPNLTD,
+A_VPCMPNLED,
+A_VPCMPLTQ,
+A_VPCMPLEQ,
+A_VPCMPNEQQ,
+A_VPCMPNLTQ,
+A_VPCMPNLEQ,
+A_VPCMPEQUB,
+A_VPCMPLTUB,
+A_VPCMPLEUB,
+A_VPCMPNEQUB,
+A_VPCMPNLTUB,
+A_VPCMPNLEUB,
+A_VPCMPEQUD,
+A_VPCMPLTUD,
+A_VPCMPLEUD,
+A_VPCMPNEQUD,
+A_VPCMPNLTUD,
+A_VPCMPMLEUD,
+A_VPCMPEQUQ,
+A_VPCMPLTUQ,
+A_VPCMPLEUQ,
+A_VPCMPNEQUQ,
+A_VPCMPNLTUQ,
+A_VPCMPNLEUQ,
+A_VPCMPEQUW,
+A_VPCMPLTUW,
+A_VPCMPLEUW,
+A_VPCMPNEQUW,
+A_VPCMPNLTUW,
+A_VPCMPNLEUW,
+A_VPCMPLTW,
+A_VPCMPLEW,
+A_VPCMPNEQW,
+A_VPCMPNLTW,
+A_VPCMPNLEW,
 A_VPCMPB,
 A_VPCMPD,
 A_VPCMPQ,
@@ -1450,5 +1558,17 @@ A_SHA1MSG1,
 A_SHA1MSG2,
 A_SHA256RNDS2,
 A_SHA256MSG1,
-A_SHA256MSG2
+A_SHA256MSG2,
+A_VSHA512RNDS2,
+A_VSHA512MSG1,
+A_VSHA512MSG2,
+A_VSM3RNDS2,
+A_VSM3MSG1,
+A_VSM3MSG2,
+A_VGF2P8AFFINEINVQB,
+A_VGF2P8AFFINEQB,
+A_VGF2P8MULB,
+A_GF2P8AFFINEINVQB,
+A_GF2P8AFFINEQB,
+A_GF2P8MULB
 );

+ 120 - 0
compiler/i386/i386prop.inc

@@ -777,6 +777,70 @@
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
@@ -1284,6 +1348,50 @@
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
@@ -1450,5 +1558,17 @@
 (Ch: [Ch_Mop2, Ch_Rop1]),
 (Ch: [Ch_Mop2, Ch_Rop1, Ch_RXMM0]),
 (Ch: [Ch_Mop2, Ch_Rop1]),
+(Ch: [Ch_Mop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Mop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Mop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Mop2, Ch_Rop1])
 );

File diff suppressed because it is too large
+ 14817 - 8601
compiler/i386/i386tab.inc


+ 122 - 2
compiler/i8086/i8086att.inc

@@ -777,6 +777,70 @@
 'vcmpge_oqpd',
 'vcmpgt_oqpd',
 'vcmptrue_uspd',
+'vcmpeqsd',
+'vcmpltsd',
+'vcmplesd',
+'vcmpunordsd',
+'vcmpneqsd',
+'vcmpnltsd',
+'vcmpnlesd',
+'vcmpordsd',
+'vcmpeq_uqsd',
+'vcmpngesd',
+'vcmpngtsd',
+'vcmpfalsesd',
+'vcmpneq_oqsd',
+'vcmpgesd',
+'vcmpgtsd',
+'vcmptruesd',
+'vcmpeq_ossd',
+'vcmplt_oqsd',
+'vcmple_oqsd',
+'vcmpunord_ssd',
+'vcmpneq_ussd',
+'vcmpnlt_uqsd',
+'vcmpnle_uqsd',
+'vcmpord_ssd',
+'vcmpeq_ussd',
+'vcmpnge_uqsd',
+'vcmpngt_uqsd',
+'vcmpfalse_ossd',
+'vcmpneq_ossd',
+'vcmpge_oqsd',
+'vcmpgt_oqsd',
+'vcmptrue_ussd',
+'vcmpeqss',
+'vcmpltss',
+'vcmpless',
+'vcmpunordss',
+'vcmpneqss',
+'vcmpnltss',
+'vcmpnless',
+'vcmpordss',
+'vcmpeq_uqss',
+'vcmpngess',
+'vcmpngtss',
+'vcmpfalsess',
+'vcmpneq_oqss',
+'vcmpgess',
+'vcmpgtss',
+'vcmptruess',
+'vcmpeq_osss',
+'vcmplt_oqss',
+'vcmple_oqss',
+'vcmpunord_sss',
+'vcmpneq_usss',
+'vcmpnlt_uqss',
+'vcmpnle_uqss',
+'vcmpord_sss',
+'vcmpeq_usss',
+'vcmpnge_uqss',
+'vcmpngt_uqss',
+'vcmpfalse_osss',
+'vcmpneq_osss',
+'vcmpge_oqss',
+'vcmpgt_oqss',
+'vcmptrue_usss',
 'vcmppd',
 'vcmpps',
 'vcmpsd',
@@ -1223,7 +1287,7 @@
 'vcompresspd',
 'vcompressps',
 'vcvtpd2qq',
-' vcvtpd2udq',
+'vcvtpd2udq',
 'vcvtpd2uqq',
 'vcvtps2qq',
 'vcvtps2udq',
@@ -1298,6 +1362,50 @@
 'vpblendmd',
 'vpblendmq',
 'vpblendmw',
+'vpcmpltb',
+'vpcmpleb',
+'vpcmpneqb',
+'vpcmpnltb',
+'vpcmpnleb',
+'vpcmpltd',
+'vpcmpled',
+'vpcmpneqd',
+'vpcmpnltd',
+'vpcmpnled',
+'vpcmpltq',
+'vpcmpleq',
+'vpcmpneqq',
+'vpcmpnltq',
+'vpcmpnleq',
+'vpcmpequb',
+'vpcmpltub',
+'vpcmpleub',
+'vpcmpnequb',
+'vpcmpnltub',
+'vpcmpnleub',
+'vpcmpequd',
+'vpcmpltud',
+'vpcmpleud',
+'vpcmpnequd',
+'vpcmpnltud',
+'vpcmpmleud',
+'vpcmpequq',
+'vpcmpltuq',
+'vpcmpleuq',
+'vpcmpnequq',
+'vpcmpnltuq',
+'vpcmpnleuq',
+'vpcmpequw',
+'vpcmpltuw',
+'vpcmpleuw',
+'vpcmpnequw',
+'vpcmpnltuw',
+'vpcmpnleuw',
+'vpcmpltw',
+'vpcmplew',
+'vpcmpneqw',
+'vpcmpnltw',
+'vpcmpnlew',
 'vpcmpb',
 'vpcmpd',
 'vpcmpq',
@@ -1464,5 +1572,17 @@
 'sha1msg2',
 'sha256rnds2',
 'sha256msg1',
-'sha256msg2'
+'sha256msg2',
+'vsha512rnds2',
+'vsha512msg1',
+'vsha512msg2',
+'vsm3rnds2',
+'vsm3msg1',
+'vsm3msg2',
+'vgf2p8affineinvqb',
+'vgf2p8affineqb',
+'vgf2p8mulb',
+'gf2p8affineinvqb',
+'gf2p8affineqb',
+'gf2p8mulb'
 );

+ 120 - 0
compiler/i8086/i8086atts.inc

@@ -785,6 +785,70 @@ attsufNONE,
 attsufNONE,
 attsufNONE,
 attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
 attsufMMX,
 attsufMMX,
 attsufNONE,
@@ -1464,5 +1528,61 @@ attsufNONE,
 attsufNONE,
 attsufNONE,
 attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
 attsufNONE
 );

+ 121 - 1
compiler/i8086/i8086int.inc

@@ -777,6 +777,70 @@
 'vcmpge_oqpd',
 'vcmpgt_oqpd',
 'vcmptrue_uspd',
+'vcmpeqsd',
+'vcmpltsd',
+'vcmplesd',
+'vcmpunordsd',
+'vcmpneqsd',
+'vcmpnltsd',
+'vcmpnlesd',
+'vcmpordsd',
+'vcmpeq_uqsd',
+'vcmpngesd',
+'vcmpngtsd',
+'vcmpfalsesd',
+'vcmpneq_oqsd',
+'vcmpgesd',
+'vcmpgtsd',
+'vcmptruesd',
+'vcmpeq_ossd',
+'vcmplt_oqsd',
+'vcmple_oqsd',
+'vcmpunord_ssd',
+'vcmpneq_ussd',
+'vcmpnlt_uqsd',
+'vcmpnle_uqsd',
+'vcmpord_ssd',
+'vcmpeq_ussd',
+'vcmpnge_uqsd',
+'vcmpngt_uqsd',
+'vcmpfalse_ossd',
+'vcmpneq_ossd',
+'vcmpge_oqsd',
+'vcmpgt_oqsd',
+'vcmptrue_ussd',
+'vcmpeqss',
+'vcmpltss',
+'vcmpless',
+'vcmpunordss',
+'vcmpneqss',
+'vcmpnltss',
+'vcmpnless',
+'vcmpordss',
+'vcmpeq_uqss',
+'vcmpngess',
+'vcmpngtss',
+'vcmpfalsess',
+'vcmpneq_oqss',
+'vcmpgess',
+'vcmpgtss',
+'vcmptruess',
+'vcmpeq_osss',
+'vcmplt_oqss',
+'vcmple_oqss',
+'vcmpunord_sss',
+'vcmpneq_usss',
+'vcmpnlt_uqss',
+'vcmpnle_uqss',
+'vcmpord_sss',
+'vcmpeq_usss',
+'vcmpnge_uqss',
+'vcmpngt_uqss',
+'vcmpfalse_osss',
+'vcmpneq_osss',
+'vcmpge_oqss',
+'vcmpgt_oqss',
+'vcmptrue_usss',
 'vcmppd',
 'vcmpps',
 'vcmpsd',
@@ -1298,6 +1362,50 @@
 'vpblendmd',
 'vpblendmq',
 'vpblendmw',
+'vpcmpltb',
+'vpcmpleb',
+'vpcmpneqb',
+'vpcmpnltb',
+'vpcmpnleb',
+'vpcmpltd',
+'vpcmpled',
+'vpcmpneqd',
+'vpcmpnltd',
+'vpcmpnled',
+'vpcmpltq',
+'vpcmpleq',
+'vpcmpneqq',
+'vpcmpnltq',
+'vpcmpnleq',
+'vpcmpequb',
+'vpcmpltub',
+'vpcmpleub',
+'vpcmpnequb',
+'vpcmpnltub',
+'vpcmpnleub',
+'vpcmpequd',
+'vpcmpltud',
+'vpcmpleud',
+'vpcmpnequd',
+'vpcmpnltud',
+'vpcmpmleud',
+'vpcmpequq',
+'vpcmpltuq',
+'vpcmpleuq',
+'vpcmpnequq',
+'vpcmpnltuq',
+'vpcmpnleuq',
+'vpcmpequw',
+'vpcmpltuw',
+'vpcmpleuw',
+'vpcmpnequw',
+'vpcmpnltuw',
+'vpcmpnleuw',
+'vpcmpltw',
+'vpcmplew',
+'vpcmpneqw',
+'vpcmpnltw',
+'vpcmpnlew',
 'vpcmpb',
 'vpcmpd',
 'vpcmpq',
@@ -1464,5 +1572,17 @@
 'sha1msg2',
 'sha256rnds2',
 'sha256msg1',
-'sha256msg2'
+'sha256msg2',
+'vsha512rnds2',
+'vsha512msg1',
+'vsha512msg2',
+'vsm3rnds2',
+'vsm3msg1',
+'vsm3msg2',
+'vgf2p8affineinvqb',
+'vgf2p8affineqb',
+'vgf2p8mulb',
+'gf2p8affineinvqb',
+'gf2p8affineqb',
+'gf2p8mulb'
 );

+ 1 - 1
compiler/i8086/i8086nop.inc

@@ -1,2 +1,2 @@
 { don't edit, this file is generated from x86ins.dat }
-4219;
+5125;

+ 121 - 1
compiler/i8086/i8086op.inc

@@ -777,6 +777,70 @@ A_VCMPNEQ_OSPD,
 A_VCMPGE_OQPD,
 A_VCMPGT_OQPD,
 A_VCMPTRUE_USPD,
+A_VCMPEQSD,
+A_VCMPLTSD,
+A_VCMPLESD,
+A_VCMPUNORDSD,
+A_VCMPNEQSD,
+A_VCMPNLTSD,
+A_VCMPNLESD,
+A_VCMPORDSD,
+A_VCMPEQ_UQSD,
+A_VCMPNGESD,
+A_VCMPNGTSD,
+A_VCMPFALSESD,
+A_VCMPNEQ_OQSD,
+A_VCMPGESD,
+A_VCMPGTSD,
+A_VCMPTRUESD,
+A_VCMPEQ_OSSD,
+A_VCMPLT_OQSD,
+A_VCMPLE_OQSD,
+A_VCMPUNORD_SSD,
+A_VCMPNEQ_USSD,
+A_VCMPNLT_UQSD,
+A_VCMPNLE_UQSD,
+A_VCMPORD_SSD,
+A_VCMPEQ_USSD,
+A_VCMPNGE_UQSD,
+A_VCMPNGT_UQSD,
+A_VCMPFALSE_OSSD,
+A_VCMPNEQ_OSSD,
+A_VCMPGE_OQSD,
+A_VCMPGT_OQSD,
+A_VCMPTRUE_USSD,
+A_VCMPEQSS,
+A_VCMPLTSS,
+A_VCMPLESS,
+A_VCMPUNORDSS,
+A_VCMPNEQSS,
+A_VCMPNLTSS,
+A_VCMPNLESS,
+A_VCMPORDSS,
+A_VCMPEQ_UQSS,
+A_VCMPNGESS,
+A_VCMPNGTSS,
+A_VCMPFALSESS,
+A_VCMPNEQ_OQSS,
+A_VCMPGESS,
+A_VCMPGTSS,
+A_VCMPTRUESS,
+A_VCMPEQ_OSSS,
+A_VCMPLT_OQSS,
+A_VCMPLE_OQSS,
+A_VCMPUNORD_SSS,
+A_VCMPNEQ_USSS,
+A_VCMPNLT_UQSS,
+A_VCMPNLE_UQSS,
+A_VCMPORD_SSS,
+A_VCMPEQ_USSS,
+A_VCMPNGE_UQSS,
+A_VCMPNGT_UQSS,
+A_VCMPFALSE_OSSS,
+A_VCMPNEQ_OSSS,
+A_VCMPGE_OQSS,
+A_VCMPGT_OQSS,
+A_VCMPTRUE_USSS,
 A_VCMPPD,
 A_VCMPPS,
 A_VCMPSD,
@@ -1298,6 +1362,50 @@ A_VPBLENDMB,
 A_VPBLENDMD,
 A_VPBLENDMQ,
 A_VPBLENDMW,
+A_VPCMPLTB,
+A_VPCMPLEB,
+A_VPCMPNEQB,
+A_VPCMPNLTB,
+A_VPCMPNLEB,
+A_VPCMPLTD,
+A_VPCMPLED,
+A_VPCMPNEQD,
+A_VPCMPNLTD,
+A_VPCMPNLED,
+A_VPCMPLTQ,
+A_VPCMPLEQ,
+A_VPCMPNEQQ,
+A_VPCMPNLTQ,
+A_VPCMPNLEQ,
+A_VPCMPEQUB,
+A_VPCMPLTUB,
+A_VPCMPLEUB,
+A_VPCMPNEQUB,
+A_VPCMPNLTUB,
+A_VPCMPNLEUB,
+A_VPCMPEQUD,
+A_VPCMPLTUD,
+A_VPCMPLEUD,
+A_VPCMPNEQUD,
+A_VPCMPNLTUD,
+A_VPCMPMLEUD,
+A_VPCMPEQUQ,
+A_VPCMPLTUQ,
+A_VPCMPLEUQ,
+A_VPCMPNEQUQ,
+A_VPCMPNLTUQ,
+A_VPCMPNLEUQ,
+A_VPCMPEQUW,
+A_VPCMPLTUW,
+A_VPCMPLEUW,
+A_VPCMPNEQUW,
+A_VPCMPNLTUW,
+A_VPCMPNLEUW,
+A_VPCMPLTW,
+A_VPCMPLEW,
+A_VPCMPNEQW,
+A_VPCMPNLTW,
+A_VPCMPNLEW,
 A_VPCMPB,
 A_VPCMPD,
 A_VPCMPQ,
@@ -1464,5 +1572,17 @@ A_SHA1MSG1,
 A_SHA1MSG2,
 A_SHA256RNDS2,
 A_SHA256MSG1,
-A_SHA256MSG2
+A_SHA256MSG2,
+A_VSHA512RNDS2,
+A_VSHA512MSG1,
+A_VSHA512MSG2,
+A_VSM3RNDS2,
+A_VSM3MSG1,
+A_VSM3MSG2,
+A_VGF2P8AFFINEINVQB,
+A_VGF2P8AFFINEQB,
+A_VGF2P8MULB,
+A_GF2P8AFFINEINVQB,
+A_GF2P8AFFINEQB,
+A_GF2P8MULB
 );

+ 120 - 0
compiler/i8086/i8086prop.inc

@@ -777,6 +777,70 @@
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
@@ -1298,6 +1362,50 @@
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
@@ -1464,5 +1572,17 @@
 (Ch: [Ch_Mop2, Ch_Rop1]),
 (Ch: [Ch_Mop2, Ch_Rop1, Ch_RXMM0]),
 (Ch: [Ch_Mop2, Ch_Rop1]),
+(Ch: [Ch_Mop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Mop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Mop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Mop2, Ch_Rop1])
 );

File diff suppressed because it is too large
+ 14944 - 8728
compiler/i8086/i8086tab.inc


File diff suppressed because it is too large
+ 864 - 0
compiler/x86/x86ins.dat


+ 120 - 0
compiler/x86_64/x8664ats.inc

@@ -781,6 +781,70 @@ attsufNONE,
 attsufNONE,
 attsufNONE,
 attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
 attsufMMX,
 attsufMMX,
 attsufNONE,
@@ -1446,5 +1510,61 @@ attsufNONE,
 attsufNONE,
 attsufNONE,
 attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
 attsufNONE
 );

+ 122 - 2
compiler/x86_64/x8664att.inc

@@ -773,6 +773,70 @@
 'vcmpge_oqpd',
 'vcmpgt_oqpd',
 'vcmptrue_uspd',
+'vcmpeqsd',
+'vcmpltsd',
+'vcmplesd',
+'vcmpunordsd',
+'vcmpneqsd',
+'vcmpnltsd',
+'vcmpnlesd',
+'vcmpordsd',
+'vcmpeq_uqsd',
+'vcmpngesd',
+'vcmpngtsd',
+'vcmpfalsesd',
+'vcmpneq_oqsd',
+'vcmpgesd',
+'vcmpgtsd',
+'vcmptruesd',
+'vcmpeq_ossd',
+'vcmplt_oqsd',
+'vcmple_oqsd',
+'vcmpunord_ssd',
+'vcmpneq_ussd',
+'vcmpnlt_uqsd',
+'vcmpnle_uqsd',
+'vcmpord_ssd',
+'vcmpeq_ussd',
+'vcmpnge_uqsd',
+'vcmpngt_uqsd',
+'vcmpfalse_ossd',
+'vcmpneq_ossd',
+'vcmpge_oqsd',
+'vcmpgt_oqsd',
+'vcmptrue_ussd',
+'vcmpeqss',
+'vcmpltss',
+'vcmpless',
+'vcmpunordss',
+'vcmpneqss',
+'vcmpnltss',
+'vcmpnless',
+'vcmpordss',
+'vcmpeq_uqss',
+'vcmpngess',
+'vcmpngtss',
+'vcmpfalsess',
+'vcmpneq_oqss',
+'vcmpgess',
+'vcmpgtss',
+'vcmptruess',
+'vcmpeq_osss',
+'vcmplt_oqss',
+'vcmple_oqss',
+'vcmpunord_sss',
+'vcmpneq_usss',
+'vcmpnlt_uqss',
+'vcmpnle_uqss',
+'vcmpord_sss',
+'vcmpeq_usss',
+'vcmpnge_uqss',
+'vcmpngt_uqss',
+'vcmpfalse_osss',
+'vcmpneq_osss',
+'vcmpge_oqss',
+'vcmpgt_oqss',
+'vcmptrue_usss',
 'vcmppd',
 'vcmpps',
 'vcmpsd',
@@ -1205,7 +1269,7 @@
 'vcompresspd',
 'vcompressps',
 'vcvtpd2qq',
-' vcvtpd2udq',
+'vcvtpd2udq',
 'vcvtpd2uqq',
 'vcvtps2qq',
 'vcvtps2udq',
@@ -1280,6 +1344,50 @@
 'vpblendmd',
 'vpblendmq',
 'vpblendmw',
+'vpcmpltb',
+'vpcmpleb',
+'vpcmpneqb',
+'vpcmpnltb',
+'vpcmpnleb',
+'vpcmpltd',
+'vpcmpled',
+'vpcmpneqd',
+'vpcmpnltd',
+'vpcmpnled',
+'vpcmpltq',
+'vpcmpleq',
+'vpcmpneqq',
+'vpcmpnltq',
+'vpcmpnleq',
+'vpcmpequb',
+'vpcmpltub',
+'vpcmpleub',
+'vpcmpnequb',
+'vpcmpnltub',
+'vpcmpnleub',
+'vpcmpequd',
+'vpcmpltud',
+'vpcmpleud',
+'vpcmpnequd',
+'vpcmpnltud',
+'vpcmpmleud',
+'vpcmpequq',
+'vpcmpltuq',
+'vpcmpleuq',
+'vpcmpnequq',
+'vpcmpnltuq',
+'vpcmpnleuq',
+'vpcmpequw',
+'vpcmpltuw',
+'vpcmpleuw',
+'vpcmpnequw',
+'vpcmpnltuw',
+'vpcmpnleuw',
+'vpcmpltw',
+'vpcmplew',
+'vpcmpneqw',
+'vpcmpnltw',
+'vpcmpnlew',
 'vpcmpb',
 'vpcmpd',
 'vpcmpq',
@@ -1446,5 +1554,17 @@
 'sha1msg2',
 'sha256rnds2',
 'sha256msg1',
-'sha256msg2'
+'sha256msg2',
+'vsha512rnds2',
+'vsha512msg1',
+'vsha512msg2',
+'vsm3rnds2',
+'vsm3msg1',
+'vsm3msg2',
+'vgf2p8affineinvqb',
+'vgf2p8affineqb',
+'vgf2p8mulb',
+'gf2p8affineinvqb',
+'gf2p8affineqb',
+'gf2p8mulb'
 );

+ 121 - 1
compiler/x86_64/x8664int.inc

@@ -773,6 +773,70 @@
 'vcmpge_oqpd',
 'vcmpgt_oqpd',
 'vcmptrue_uspd',
+'vcmpeqsd',
+'vcmpltsd',
+'vcmplesd',
+'vcmpunordsd',
+'vcmpneqsd',
+'vcmpnltsd',
+'vcmpnlesd',
+'vcmpordsd',
+'vcmpeq_uqsd',
+'vcmpngesd',
+'vcmpngtsd',
+'vcmpfalsesd',
+'vcmpneq_oqsd',
+'vcmpgesd',
+'vcmpgtsd',
+'vcmptruesd',
+'vcmpeq_ossd',
+'vcmplt_oqsd',
+'vcmple_oqsd',
+'vcmpunord_ssd',
+'vcmpneq_ussd',
+'vcmpnlt_uqsd',
+'vcmpnle_uqsd',
+'vcmpord_ssd',
+'vcmpeq_ussd',
+'vcmpnge_uqsd',
+'vcmpngt_uqsd',
+'vcmpfalse_ossd',
+'vcmpneq_ossd',
+'vcmpge_oqsd',
+'vcmpgt_oqsd',
+'vcmptrue_ussd',
+'vcmpeqss',
+'vcmpltss',
+'vcmpless',
+'vcmpunordss',
+'vcmpneqss',
+'vcmpnltss',
+'vcmpnless',
+'vcmpordss',
+'vcmpeq_uqss',
+'vcmpngess',
+'vcmpngtss',
+'vcmpfalsess',
+'vcmpneq_oqss',
+'vcmpgess',
+'vcmpgtss',
+'vcmptruess',
+'vcmpeq_osss',
+'vcmplt_oqss',
+'vcmple_oqss',
+'vcmpunord_sss',
+'vcmpneq_usss',
+'vcmpnlt_uqss',
+'vcmpnle_uqss',
+'vcmpord_sss',
+'vcmpeq_usss',
+'vcmpnge_uqss',
+'vcmpngt_uqss',
+'vcmpfalse_osss',
+'vcmpneq_osss',
+'vcmpge_oqss',
+'vcmpgt_oqss',
+'vcmptrue_usss',
 'vcmppd',
 'vcmpps',
 'vcmpsd',
@@ -1280,6 +1344,50 @@
 'vpblendmd',
 'vpblendmq',
 'vpblendmw',
+'vpcmpltb',
+'vpcmpleb',
+'vpcmpneqb',
+'vpcmpnltb',
+'vpcmpnleb',
+'vpcmpltd',
+'vpcmpled',
+'vpcmpneqd',
+'vpcmpnltd',
+'vpcmpnled',
+'vpcmpltq',
+'vpcmpleq',
+'vpcmpneqq',
+'vpcmpnltq',
+'vpcmpnleq',
+'vpcmpequb',
+'vpcmpltub',
+'vpcmpleub',
+'vpcmpnequb',
+'vpcmpnltub',
+'vpcmpnleub',
+'vpcmpequd',
+'vpcmpltud',
+'vpcmpleud',
+'vpcmpnequd',
+'vpcmpnltud',
+'vpcmpmleud',
+'vpcmpequq',
+'vpcmpltuq',
+'vpcmpleuq',
+'vpcmpnequq',
+'vpcmpnltuq',
+'vpcmpnleuq',
+'vpcmpequw',
+'vpcmpltuw',
+'vpcmpleuw',
+'vpcmpnequw',
+'vpcmpnltuw',
+'vpcmpnleuw',
+'vpcmpltw',
+'vpcmplew',
+'vpcmpneqw',
+'vpcmpnltw',
+'vpcmpnlew',
 'vpcmpb',
 'vpcmpd',
 'vpcmpq',
@@ -1446,5 +1554,17 @@
 'sha1msg2',
 'sha256rnds2',
 'sha256msg1',
-'sha256msg2'
+'sha256msg2',
+'vsha512rnds2',
+'vsha512msg1',
+'vsha512msg2',
+'vsm3rnds2',
+'vsm3msg1',
+'vsm3msg2',
+'vgf2p8affineinvqb',
+'vgf2p8affineqb',
+'vgf2p8mulb',
+'gf2p8affineinvqb',
+'gf2p8affineqb',
+'gf2p8mulb'
 );

+ 1 - 1
compiler/x86_64/x8664nop.inc

@@ -1,2 +1,2 @@
 { don't edit, this file is generated from x86ins.dat }
-4251;
+5157;

+ 121 - 1
compiler/x86_64/x8664op.inc

@@ -773,6 +773,70 @@ A_VCMPNEQ_OSPD,
 A_VCMPGE_OQPD,
 A_VCMPGT_OQPD,
 A_VCMPTRUE_USPD,
+A_VCMPEQSD,
+A_VCMPLTSD,
+A_VCMPLESD,
+A_VCMPUNORDSD,
+A_VCMPNEQSD,
+A_VCMPNLTSD,
+A_VCMPNLESD,
+A_VCMPORDSD,
+A_VCMPEQ_UQSD,
+A_VCMPNGESD,
+A_VCMPNGTSD,
+A_VCMPFALSESD,
+A_VCMPNEQ_OQSD,
+A_VCMPGESD,
+A_VCMPGTSD,
+A_VCMPTRUESD,
+A_VCMPEQ_OSSD,
+A_VCMPLT_OQSD,
+A_VCMPLE_OQSD,
+A_VCMPUNORD_SSD,
+A_VCMPNEQ_USSD,
+A_VCMPNLT_UQSD,
+A_VCMPNLE_UQSD,
+A_VCMPORD_SSD,
+A_VCMPEQ_USSD,
+A_VCMPNGE_UQSD,
+A_VCMPNGT_UQSD,
+A_VCMPFALSE_OSSD,
+A_VCMPNEQ_OSSD,
+A_VCMPGE_OQSD,
+A_VCMPGT_OQSD,
+A_VCMPTRUE_USSD,
+A_VCMPEQSS,
+A_VCMPLTSS,
+A_VCMPLESS,
+A_VCMPUNORDSS,
+A_VCMPNEQSS,
+A_VCMPNLTSS,
+A_VCMPNLESS,
+A_VCMPORDSS,
+A_VCMPEQ_UQSS,
+A_VCMPNGESS,
+A_VCMPNGTSS,
+A_VCMPFALSESS,
+A_VCMPNEQ_OQSS,
+A_VCMPGESS,
+A_VCMPGTSS,
+A_VCMPTRUESS,
+A_VCMPEQ_OSSS,
+A_VCMPLT_OQSS,
+A_VCMPLE_OQSS,
+A_VCMPUNORD_SSS,
+A_VCMPNEQ_USSS,
+A_VCMPNLT_UQSS,
+A_VCMPNLE_UQSS,
+A_VCMPORD_SSS,
+A_VCMPEQ_USSS,
+A_VCMPNGE_UQSS,
+A_VCMPNGT_UQSS,
+A_VCMPFALSE_OSSS,
+A_VCMPNEQ_OSSS,
+A_VCMPGE_OQSS,
+A_VCMPGT_OQSS,
+A_VCMPTRUE_USSS,
 A_VCMPPD,
 A_VCMPPS,
 A_VCMPSD,
@@ -1280,6 +1344,50 @@ A_VPBLENDMB,
 A_VPBLENDMD,
 A_VPBLENDMQ,
 A_VPBLENDMW,
+A_VPCMPLTB,
+A_VPCMPLEB,
+A_VPCMPNEQB,
+A_VPCMPNLTB,
+A_VPCMPNLEB,
+A_VPCMPLTD,
+A_VPCMPLED,
+A_VPCMPNEQD,
+A_VPCMPNLTD,
+A_VPCMPNLED,
+A_VPCMPLTQ,
+A_VPCMPLEQ,
+A_VPCMPNEQQ,
+A_VPCMPNLTQ,
+A_VPCMPNLEQ,
+A_VPCMPEQUB,
+A_VPCMPLTUB,
+A_VPCMPLEUB,
+A_VPCMPNEQUB,
+A_VPCMPNLTUB,
+A_VPCMPNLEUB,
+A_VPCMPEQUD,
+A_VPCMPLTUD,
+A_VPCMPLEUD,
+A_VPCMPNEQUD,
+A_VPCMPNLTUD,
+A_VPCMPMLEUD,
+A_VPCMPEQUQ,
+A_VPCMPLTUQ,
+A_VPCMPLEUQ,
+A_VPCMPNEQUQ,
+A_VPCMPNLTUQ,
+A_VPCMPNLEUQ,
+A_VPCMPEQUW,
+A_VPCMPLTUW,
+A_VPCMPLEUW,
+A_VPCMPNEQUW,
+A_VPCMPNLTUW,
+A_VPCMPNLEUW,
+A_VPCMPLTW,
+A_VPCMPLEW,
+A_VPCMPNEQW,
+A_VPCMPNLTW,
+A_VPCMPNLEW,
 A_VPCMPB,
 A_VPCMPD,
 A_VPCMPQ,
@@ -1446,5 +1554,17 @@ A_SHA1MSG1,
 A_SHA1MSG2,
 A_SHA256RNDS2,
 A_SHA256MSG1,
-A_SHA256MSG2
+A_SHA256MSG2,
+A_VSHA512RNDS2,
+A_VSHA512MSG1,
+A_VSHA512MSG2,
+A_VSM3RNDS2,
+A_VSM3MSG1,
+A_VSM3MSG2,
+A_VGF2P8AFFINEINVQB,
+A_VGF2P8AFFINEQB,
+A_VGF2P8MULB,
+A_GF2P8AFFINEINVQB,
+A_GF2P8AFFINEQB,
+A_GF2P8MULB
 );

+ 120 - 0
compiler/x86_64/x8664pro.inc

@@ -773,6 +773,70 @@
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
@@ -1280,6 +1344,50 @@
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
 (Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
@@ -1446,5 +1554,17 @@
 (Ch: [Ch_Mop2, Ch_Rop1]),
 (Ch: [Ch_Mop2, Ch_Rop1, Ch_RXMM0]),
 (Ch: [Ch_Mop2, Ch_Rop1]),
+(Ch: [Ch_Mop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Mop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Mop3, Ch_Rop2, Ch_Rop1]),
 (Ch: [Ch_Mop2, Ch_Rop1])
 );

File diff suppressed because it is too large
+ 15155 - 8939
compiler/x86_64/x8664tab.inc


Some files were not shown because too many files changed in this diff