sparc: update core. this added/removed some instructions & groups. updated Python & Java bindings accordingly
diff --git a/arch/Sparc/SparcInstPrinter.c b/arch/Sparc/SparcInstPrinter.c
index 8b3386a..d395700 100644
--- a/arch/Sparc/SparcInstPrinter.c
+++ b/arch/Sparc/SparcInstPrinter.c
@@ -264,12 +264,84 @@
 
 void Sparc_printInst(MCInst *MI, SStream *O, void *Info)
 {
-	char *mnem;
+	char *mnem, *p;
+	char instr[64];	// Sparc has no instruction this long
 
 	mnem = printAliasInstr(MI, O, Info);
 	if (mnem) {
 		// fixup instruction id due to the change in alias instruction
-		MCInst_setOpcodePub(MI, Sparc_map_insn(mnem));
+		strncpy(instr, mnem, strlen(mnem));
+		instr[strlen(mnem)] = '\0';
+		// does this contains hint with a coma?
+		p = strchr(instr, ',');
+		if (p)
+			*p = '\0';	// now instr only has instruction mnemonic
+		MCInst_setOpcodePub(MI, Sparc_map_insn(instr));
+		switch(MCInst_getOpcode(MI)) {
+			case SP_BCOND:
+			case SP_BCONDA:
+			case SP_BPICCANT:
+			case SP_BPICCNT:
+			case SP_BPXCCANT:
+			case SP_BPXCCNT:
+			case SP_TXCCri:
+			case SP_TXCCrr:
+				if (MI->csh->detail) {
+					// skip 'b', 't'
+					MI->flat_insn->detail->sparc.cc = Sparc_map_ICC(instr + 1);
+					MI->flat_insn->detail->sparc.hint = Sparc_map_hint(mnem);
+				}
+				break;
+			case SP_BPFCCANT:
+			case SP_BPFCCNT:
+				if (MI->csh->detail) {
+					// skip 'fb'
+					MI->flat_insn->detail->sparc.cc = Sparc_map_FCC(instr + 2);
+					MI->flat_insn->detail->sparc.hint = Sparc_map_hint(mnem);
+				}
+				break;
+			case SP_FMOVD_ICC:
+			case SP_FMOVD_XCC:
+			case SP_FMOVQ_ICC:
+			case SP_FMOVQ_XCC:
+			case SP_FMOVS_ICC:
+			case SP_FMOVS_XCC:
+				if (MI->csh->detail) {
+					// skip 'fmovd', 'fmovq', 'fmovs'
+					MI->flat_insn->detail->sparc.cc = Sparc_map_ICC(instr + 5);
+					MI->flat_insn->detail->sparc.hint = Sparc_map_hint(mnem);
+				}
+				break;
+			case SP_MOVICCri:
+			case SP_MOVICCrr:
+			case SP_MOVXCCri:
+			case SP_MOVXCCrr:
+				if (MI->csh->detail) {
+					// skip 'mov'
+					MI->flat_insn->detail->sparc.cc = Sparc_map_ICC(instr + 3);
+					MI->flat_insn->detail->sparc.hint = Sparc_map_hint(mnem);
+				}
+				break;
+			case SP_V9FMOVD_FCC:
+			case SP_V9FMOVQ_FCC:
+			case SP_V9FMOVS_FCC:
+				if (MI->csh->detail) {
+					// skip 'fmovd', 'fmovq', 'fmovs'
+					MI->flat_insn->detail->sparc.cc = Sparc_map_FCC(instr + 5);
+					MI->flat_insn->detail->sparc.hint = Sparc_map_hint(mnem);
+				}
+				break;
+			case SP_V9MOVFCCri:
+			case SP_V9MOVFCCrr:
+				if (MI->csh->detail) {
+					// skip 'mov'
+					MI->flat_insn->detail->sparc.cc = Sparc_map_FCC(instr + 3);
+					MI->flat_insn->detail->sparc.hint = Sparc_map_hint(mnem);
+				}
+				break;
+			default:
+				break;
+		}
 		cs_mem_free(mnem);
 	} else {
 		if (!printSparcAliasInstr(MI, O))
diff --git a/arch/Sparc/SparcMapping.c b/arch/Sparc/SparcMapping.c
index bb9d07f..5e31c23 100644
--- a/arch/Sparc/SparcMapping.c
+++ b/arch/Sparc/SparcMapping.c
@@ -296,7 +296,7 @@
 #endif
 	},
 	{
-		SP_BA, SPARC_INS_BA,
+		SP_BA, SPARC_INS_B,
 #ifndef CAPSTONE_DIET
 		{ 0 }, { 0 }, { 0 }, 1, 0
 #endif
@@ -2426,13 +2426,13 @@
 #endif
 	},
 	{
-		SP_TA3, SPARC_INS_TA,
+		SP_TA3, SPARC_INS_T,
 #ifndef CAPSTONE_DIET
 		{ 0 }, { 0 }, { 0 }, 0, 0
 #endif
 	},
 	{
-		SP_TA5, SPARC_INS_TA,
+		SP_TA5, SPARC_INS_T,
 #ifndef CAPSTONE_DIET
 		{ 0 }, { 0 }, { 0 }, 0, 0
 #endif
@@ -2849,7 +2849,6 @@
 	{ SPARC_INS_ARRAY16, "array16" },
 	{ SPARC_INS_ARRAY32, "array32" },
 	{ SPARC_INS_ARRAY8, "array8" },
-	{ SPARC_INS_BA, "ba" },
 	{ SPARC_INS_B, "b" },
 	{ SPARC_INS_JMP, "jmp" },
 	{ SPARC_INS_BMASK, "bmask" },
@@ -3089,7 +3088,6 @@
 	{ SPARC_INS_SUBXCC, "subxcc" },
 	{ SPARC_INS_SUB, "sub" },
 	{ SPARC_INS_SWAP, "swap" },
-	{ SPARC_INS_TA, "ta" },
 	{ SPARC_INS_TADDCCTV, "taddcctv" },
 	{ SPARC_INS_TADDCC, "taddcc" },
 	{ SPARC_INS_T, "t" },
@@ -3215,42 +3213,86 @@
 	return (i != -1)? i : SPARC_REG_INVALID;
 }
 
+// NOTE: put strings in the order of string length since
+// we are going to compare with mnemonic to find out CC
 static name_map alias_icc_maps[] = {
-	{ SPARC_CC_ICC_A, "a" },
-	{ SPARC_CC_ICC_N, "n" },
-	{ SPARC_CC_ICC_NE, "ne" },
-	{ SPARC_CC_ICC_E, "e" },
-	{ SPARC_CC_ICC_G, "g" },
-	{ SPARC_CC_ICC_LE, "le" },
-	{ SPARC_CC_ICC_GE, "ge" },
-	{ SPARC_CC_ICC_L, "l" },
-	{ SPARC_CC_ICC_GU, "gu" },
 	{ SPARC_CC_ICC_LEU, "leu" },
-	{ SPARC_CC_ICC_CC, "cc" },
-	{ SPARC_CC_ICC_CS, "cs" },
 	{ SPARC_CC_ICC_POS, "pos" },
 	{ SPARC_CC_ICC_NEG, "neg" },
+	{ SPARC_CC_ICC_NE, "ne" },
+	{ SPARC_CC_ICC_LE, "le" },
+	{ SPARC_CC_ICC_GE, "ge" },
+	{ SPARC_CC_ICC_GU, "gu" },
+	{ SPARC_CC_ICC_CC, "cc" },
+	{ SPARC_CC_ICC_CS, "cs" },
 	{ SPARC_CC_ICC_VC, "vc" },
 	{ SPARC_CC_ICC_VS, "vs" },
+	{ SPARC_CC_ICC_A, "a" },
+	{ SPARC_CC_ICC_N, "n" },
+	{ SPARC_CC_ICC_E, "e" },
+	{ SPARC_CC_ICC_G, "g" },
+	{ SPARC_CC_ICC_L, "l" },
 };
 
 static name_map alias_fcc_maps[] = {
+	{ SPARC_CC_FCC_UGE, "uge" },
+	{ SPARC_CC_FCC_ULE, "ule" },
+	{ SPARC_CC_FCC_UG, "ug" },
+	{ SPARC_CC_FCC_UL, "ul" },
+	{ SPARC_CC_FCC_LG, "lg" },
+	{ SPARC_CC_FCC_NE, "ne" },
+	{ SPARC_CC_FCC_UE, "ue" },
+	{ SPARC_CC_FCC_GE, "ge" },
+	{ SPARC_CC_FCC_LE, "le" },
 	{ SPARC_CC_FCC_A, "a" },
 	{ SPARC_CC_FCC_N, "n" },
 	{ SPARC_CC_FCC_U, "u" },
 	{ SPARC_CC_FCC_G, "g" },
-	{ SPARC_CC_FCC_UG, "ug" },
 	{ SPARC_CC_FCC_L, "l" },
-	{ SPARC_CC_FCC_UL, "ul" },
-	{ SPARC_CC_FCC_LG, "lg" },
-	{ SPARC_CC_FCC_NE, "ne" },
 	{ SPARC_CC_FCC_E, "e" },
-	{ SPARC_CC_FCC_UE, "ue" },
-	{ SPARC_CC_FCC_GE, "ge" },
-	{ SPARC_CC_FCC_UGE, "uge" },
-	{ SPARC_CC_FCC_LE, "le" },
-	{ SPARC_CC_FCC_ULE, "ule" },
 	{ SPARC_CC_FCC_O, "o" },
 };
 
+// map CC string to CC id
+sparc_cc Sparc_map_ICC(const char *name)
+{
+	unsigned int i;
+
+	i = name2id(alias_icc_maps, ARR_SIZE(alias_icc_maps), name);
+
+	return (i != -1)? i : SPARC_CC_INVALID;
+}
+
+sparc_cc Sparc_map_FCC(const char *name)
+{
+	unsigned int i;
+
+	i = name2id(alias_fcc_maps, ARR_SIZE(alias_fcc_maps), name);
+
+	return (i != -1)? i : SPARC_CC_INVALID;
+}
+
+static name_map hint_maps[] = {
+	{ SPARC_HINT_A, ",a" },
+	{ SPARC_HINT_A | SPARC_HINT_PN, ",a,pn" },
+	{ SPARC_HINT_PN, ",pn" },
+};
+
+sparc_hint Sparc_map_hint(const char *name)
+{
+	unsigned int i, l1, l2;
+
+	l1 = strlen(name);
+	for(i = 0; i < ARR_SIZE(hint_maps); i++) {
+		l2 = strlen(hint_maps[i].name);
+		if (l1 > l2) {
+			// compare the last part of @name with this hint string
+			if (!strcmp(hint_maps[i].name, name + (l1 - l2)))
+				return hint_maps[i].id;
+		}
+	}
+
+	return SPARC_HINT_INVALID;
+}
+
 #endif
diff --git a/arch/Sparc/SparcMapping.h b/arch/Sparc/SparcMapping.h
index 842ed0f..fa9bcae 100644
--- a/arch/Sparc/SparcMapping.h
+++ b/arch/Sparc/SparcMapping.h
@@ -23,5 +23,12 @@
 // this is for alias instructions only
 sparc_reg Sparc_map_insn(const char *name);
 
+// map CC string to CC id
+sparc_cc Sparc_map_ICC(const char *name);
+
+sparc_cc Sparc_map_FCC(const char *name);
+
+sparc_hint Sparc_map_hint(const char *name);
+
 #endif
 
diff --git a/bindings/java/capstone/Sparc_const.java b/bindings/java/capstone/Sparc_const.java
index 1ffab3a..ce6becd 100644
--- a/bindings/java/capstone/Sparc_const.java
+++ b/bindings/java/capstone/Sparc_const.java
@@ -168,270 +168,268 @@
 	public static final int SPARC_INS_ARRAY16 = 13;
 	public static final int SPARC_INS_ARRAY32 = 14;
 	public static final int SPARC_INS_ARRAY8 = 15;
-	public static final int SPARC_INS_BA = 16;
-	public static final int SPARC_INS_B = 17;
-	public static final int SPARC_INS_JMP = 18;
-	public static final int SPARC_INS_BMASK = 19;
-	public static final int SPARC_INS_FB = 20;
-	public static final int SPARC_INS_BRGEZ = 21;
-	public static final int SPARC_INS_BRGZ = 22;
-	public static final int SPARC_INS_BRLEZ = 23;
-	public static final int SPARC_INS_BRLZ = 24;
-	public static final int SPARC_INS_BRNZ = 25;
-	public static final int SPARC_INS_BRZ = 26;
-	public static final int SPARC_INS_BSHUFFLE = 27;
-	public static final int SPARC_INS_CALL = 28;
-	public static final int SPARC_INS_CASX = 29;
-	public static final int SPARC_INS_CAS = 30;
-	public static final int SPARC_INS_CMASK16 = 31;
-	public static final int SPARC_INS_CMASK32 = 32;
-	public static final int SPARC_INS_CMASK8 = 33;
-	public static final int SPARC_INS_CMP = 34;
-	public static final int SPARC_INS_EDGE16 = 35;
-	public static final int SPARC_INS_EDGE16L = 36;
-	public static final int SPARC_INS_EDGE16LN = 37;
-	public static final int SPARC_INS_EDGE16N = 38;
-	public static final int SPARC_INS_EDGE32 = 39;
-	public static final int SPARC_INS_EDGE32L = 40;
-	public static final int SPARC_INS_EDGE32LN = 41;
-	public static final int SPARC_INS_EDGE32N = 42;
-	public static final int SPARC_INS_EDGE8 = 43;
-	public static final int SPARC_INS_EDGE8L = 44;
-	public static final int SPARC_INS_EDGE8LN = 45;
-	public static final int SPARC_INS_EDGE8N = 46;
-	public static final int SPARC_INS_FABSD = 47;
-	public static final int SPARC_INS_FABSQ = 48;
-	public static final int SPARC_INS_FABSS = 49;
-	public static final int SPARC_INS_FADDD = 50;
-	public static final int SPARC_INS_FADDQ = 51;
-	public static final int SPARC_INS_FADDS = 52;
-	public static final int SPARC_INS_FALIGNDATA = 53;
-	public static final int SPARC_INS_FAND = 54;
-	public static final int SPARC_INS_FANDNOT1 = 55;
-	public static final int SPARC_INS_FANDNOT1S = 56;
-	public static final int SPARC_INS_FANDNOT2 = 57;
-	public static final int SPARC_INS_FANDNOT2S = 58;
-	public static final int SPARC_INS_FANDS = 59;
-	public static final int SPARC_INS_FCHKSM16 = 60;
-	public static final int SPARC_INS_FCMPD = 61;
-	public static final int SPARC_INS_FCMPEQ16 = 62;
-	public static final int SPARC_INS_FCMPEQ32 = 63;
-	public static final int SPARC_INS_FCMPGT16 = 64;
-	public static final int SPARC_INS_FCMPGT32 = 65;
-	public static final int SPARC_INS_FCMPLE16 = 66;
-	public static final int SPARC_INS_FCMPLE32 = 67;
-	public static final int SPARC_INS_FCMPNE16 = 68;
-	public static final int SPARC_INS_FCMPNE32 = 69;
-	public static final int SPARC_INS_FCMPQ = 70;
-	public static final int SPARC_INS_FCMPS = 71;
-	public static final int SPARC_INS_FDIVD = 72;
-	public static final int SPARC_INS_FDIVQ = 73;
-	public static final int SPARC_INS_FDIVS = 74;
-	public static final int SPARC_INS_FDMULQ = 75;
-	public static final int SPARC_INS_FDTOI = 76;
-	public static final int SPARC_INS_FDTOQ = 77;
-	public static final int SPARC_INS_FDTOS = 78;
-	public static final int SPARC_INS_FDTOX = 79;
-	public static final int SPARC_INS_FEXPAND = 80;
-	public static final int SPARC_INS_FHADDD = 81;
-	public static final int SPARC_INS_FHADDS = 82;
-	public static final int SPARC_INS_FHSUBD = 83;
-	public static final int SPARC_INS_FHSUBS = 84;
-	public static final int SPARC_INS_FITOD = 85;
-	public static final int SPARC_INS_FITOQ = 86;
-	public static final int SPARC_INS_FITOS = 87;
-	public static final int SPARC_INS_FLCMPD = 88;
-	public static final int SPARC_INS_FLCMPS = 89;
-	public static final int SPARC_INS_FLUSHW = 90;
-	public static final int SPARC_INS_FMEAN16 = 91;
-	public static final int SPARC_INS_FMOVD = 92;
-	public static final int SPARC_INS_FMOVQ = 93;
-	public static final int SPARC_INS_FMOVRDGEZ = 94;
-	public static final int SPARC_INS_FMOVRQGEZ = 95;
-	public static final int SPARC_INS_FMOVRSGEZ = 96;
-	public static final int SPARC_INS_FMOVRDGZ = 97;
-	public static final int SPARC_INS_FMOVRQGZ = 98;
-	public static final int SPARC_INS_FMOVRSGZ = 99;
-	public static final int SPARC_INS_FMOVRDLEZ = 100;
-	public static final int SPARC_INS_FMOVRQLEZ = 101;
-	public static final int SPARC_INS_FMOVRSLEZ = 102;
-	public static final int SPARC_INS_FMOVRDLZ = 103;
-	public static final int SPARC_INS_FMOVRQLZ = 104;
-	public static final int SPARC_INS_FMOVRSLZ = 105;
-	public static final int SPARC_INS_FMOVRDNZ = 106;
-	public static final int SPARC_INS_FMOVRQNZ = 107;
-	public static final int SPARC_INS_FMOVRSNZ = 108;
-	public static final int SPARC_INS_FMOVRDZ = 109;
-	public static final int SPARC_INS_FMOVRQZ = 110;
-	public static final int SPARC_INS_FMOVRSZ = 111;
-	public static final int SPARC_INS_FMOVS = 112;
-	public static final int SPARC_INS_FMUL8SUX16 = 113;
-	public static final int SPARC_INS_FMUL8ULX16 = 114;
-	public static final int SPARC_INS_FMUL8X16 = 115;
-	public static final int SPARC_INS_FMUL8X16AL = 116;
-	public static final int SPARC_INS_FMUL8X16AU = 117;
-	public static final int SPARC_INS_FMULD = 118;
-	public static final int SPARC_INS_FMULD8SUX16 = 119;
-	public static final int SPARC_INS_FMULD8ULX16 = 120;
-	public static final int SPARC_INS_FMULQ = 121;
-	public static final int SPARC_INS_FMULS = 122;
-	public static final int SPARC_INS_FNADDD = 123;
-	public static final int SPARC_INS_FNADDS = 124;
-	public static final int SPARC_INS_FNAND = 125;
-	public static final int SPARC_INS_FNANDS = 126;
-	public static final int SPARC_INS_FNEGD = 127;
-	public static final int SPARC_INS_FNEGQ = 128;
-	public static final int SPARC_INS_FNEGS = 129;
-	public static final int SPARC_INS_FNHADDD = 130;
-	public static final int SPARC_INS_FNHADDS = 131;
-	public static final int SPARC_INS_FNOR = 132;
-	public static final int SPARC_INS_FNORS = 133;
-	public static final int SPARC_INS_FNOT1 = 134;
-	public static final int SPARC_INS_FNOT1S = 135;
-	public static final int SPARC_INS_FNOT2 = 136;
-	public static final int SPARC_INS_FNOT2S = 137;
-	public static final int SPARC_INS_FONE = 138;
-	public static final int SPARC_INS_FONES = 139;
-	public static final int SPARC_INS_FOR = 140;
-	public static final int SPARC_INS_FORNOT1 = 141;
-	public static final int SPARC_INS_FORNOT1S = 142;
-	public static final int SPARC_INS_FORNOT2 = 143;
-	public static final int SPARC_INS_FORNOT2S = 144;
-	public static final int SPARC_INS_FORS = 145;
-	public static final int SPARC_INS_FPACK16 = 146;
-	public static final int SPARC_INS_FPACK32 = 147;
-	public static final int SPARC_INS_FPACKFIX = 148;
-	public static final int SPARC_INS_FPADD16 = 149;
-	public static final int SPARC_INS_FPADD16S = 150;
-	public static final int SPARC_INS_FPADD32 = 151;
-	public static final int SPARC_INS_FPADD32S = 152;
-	public static final int SPARC_INS_FPADD64 = 153;
-	public static final int SPARC_INS_FPMERGE = 154;
-	public static final int SPARC_INS_FPSUB16 = 155;
-	public static final int SPARC_INS_FPSUB16S = 156;
-	public static final int SPARC_INS_FPSUB32 = 157;
-	public static final int SPARC_INS_FPSUB32S = 158;
-	public static final int SPARC_INS_FQTOD = 159;
-	public static final int SPARC_INS_FQTOI = 160;
-	public static final int SPARC_INS_FQTOS = 161;
-	public static final int SPARC_INS_FQTOX = 162;
-	public static final int SPARC_INS_FSLAS16 = 163;
-	public static final int SPARC_INS_FSLAS32 = 164;
-	public static final int SPARC_INS_FSLL16 = 165;
-	public static final int SPARC_INS_FSLL32 = 166;
-	public static final int SPARC_INS_FSMULD = 167;
-	public static final int SPARC_INS_FSQRTD = 168;
-	public static final int SPARC_INS_FSQRTQ = 169;
-	public static final int SPARC_INS_FSQRTS = 170;
-	public static final int SPARC_INS_FSRA16 = 171;
-	public static final int SPARC_INS_FSRA32 = 172;
-	public static final int SPARC_INS_FSRC1 = 173;
-	public static final int SPARC_INS_FSRC1S = 174;
-	public static final int SPARC_INS_FSRC2 = 175;
-	public static final int SPARC_INS_FSRC2S = 176;
-	public static final int SPARC_INS_FSRL16 = 177;
-	public static final int SPARC_INS_FSRL32 = 178;
-	public static final int SPARC_INS_FSTOD = 179;
-	public static final int SPARC_INS_FSTOI = 180;
-	public static final int SPARC_INS_FSTOQ = 181;
-	public static final int SPARC_INS_FSTOX = 182;
-	public static final int SPARC_INS_FSUBD = 183;
-	public static final int SPARC_INS_FSUBQ = 184;
-	public static final int SPARC_INS_FSUBS = 185;
-	public static final int SPARC_INS_FXNOR = 186;
-	public static final int SPARC_INS_FXNORS = 187;
-	public static final int SPARC_INS_FXOR = 188;
-	public static final int SPARC_INS_FXORS = 189;
-	public static final int SPARC_INS_FXTOD = 190;
-	public static final int SPARC_INS_FXTOQ = 191;
-	public static final int SPARC_INS_FXTOS = 192;
-	public static final int SPARC_INS_FZERO = 193;
-	public static final int SPARC_INS_FZEROS = 194;
-	public static final int SPARC_INS_JMPL = 195;
-	public static final int SPARC_INS_LDD = 196;
-	public static final int SPARC_INS_LD = 197;
-	public static final int SPARC_INS_LDQ = 198;
-	public static final int SPARC_INS_LDSB = 199;
-	public static final int SPARC_INS_LDSH = 200;
-	public static final int SPARC_INS_LDSW = 201;
-	public static final int SPARC_INS_LDUB = 202;
-	public static final int SPARC_INS_LDUH = 203;
-	public static final int SPARC_INS_LDX = 204;
-	public static final int SPARC_INS_LZCNT = 205;
-	public static final int SPARC_INS_MEMBAR = 206;
-	public static final int SPARC_INS_MOVDTOX = 207;
-	public static final int SPARC_INS_MOV = 208;
-	public static final int SPARC_INS_MOVRGEZ = 209;
-	public static final int SPARC_INS_MOVRGZ = 210;
-	public static final int SPARC_INS_MOVRLEZ = 211;
-	public static final int SPARC_INS_MOVRLZ = 212;
-	public static final int SPARC_INS_MOVRNZ = 213;
-	public static final int SPARC_INS_MOVRZ = 214;
-	public static final int SPARC_INS_MOVSTOSW = 215;
-	public static final int SPARC_INS_MOVSTOUW = 216;
-	public static final int SPARC_INS_MULX = 217;
-	public static final int SPARC_INS_NOP = 218;
-	public static final int SPARC_INS_ORCC = 219;
-	public static final int SPARC_INS_ORNCC = 220;
-	public static final int SPARC_INS_ORN = 221;
-	public static final int SPARC_INS_OR = 222;
-	public static final int SPARC_INS_PDIST = 223;
-	public static final int SPARC_INS_PDISTN = 224;
-	public static final int SPARC_INS_POPC = 225;
-	public static final int SPARC_INS_RD = 226;
-	public static final int SPARC_INS_RESTORE = 227;
-	public static final int SPARC_INS_RETT = 228;
-	public static final int SPARC_INS_SAVE = 229;
-	public static final int SPARC_INS_SDIVCC = 230;
-	public static final int SPARC_INS_SDIVX = 231;
-	public static final int SPARC_INS_SDIV = 232;
-	public static final int SPARC_INS_SETHI = 233;
-	public static final int SPARC_INS_SHUTDOWN = 234;
-	public static final int SPARC_INS_SIAM = 235;
-	public static final int SPARC_INS_SLLX = 236;
-	public static final int SPARC_INS_SLL = 237;
-	public static final int SPARC_INS_SMULCC = 238;
-	public static final int SPARC_INS_SMUL = 239;
-	public static final int SPARC_INS_SRAX = 240;
-	public static final int SPARC_INS_SRA = 241;
-	public static final int SPARC_INS_SRLX = 242;
-	public static final int SPARC_INS_SRL = 243;
-	public static final int SPARC_INS_STBAR = 244;
-	public static final int SPARC_INS_STB = 245;
-	public static final int SPARC_INS_STD = 246;
-	public static final int SPARC_INS_ST = 247;
-	public static final int SPARC_INS_STH = 248;
-	public static final int SPARC_INS_STQ = 249;
-	public static final int SPARC_INS_STX = 250;
-	public static final int SPARC_INS_SUBCC = 251;
-	public static final int SPARC_INS_SUBX = 252;
-	public static final int SPARC_INS_SUBXCC = 253;
-	public static final int SPARC_INS_SUB = 254;
-	public static final int SPARC_INS_SWAP = 255;
-	public static final int SPARC_INS_TA = 256;
-	public static final int SPARC_INS_TADDCCTV = 257;
-	public static final int SPARC_INS_TADDCC = 258;
-	public static final int SPARC_INS_T = 259;
-	public static final int SPARC_INS_TSUBCCTV = 260;
-	public static final int SPARC_INS_TSUBCC = 261;
-	public static final int SPARC_INS_UDIVCC = 262;
-	public static final int SPARC_INS_UDIVX = 263;
-	public static final int SPARC_INS_UDIV = 264;
-	public static final int SPARC_INS_UMULCC = 265;
-	public static final int SPARC_INS_UMULXHI = 266;
-	public static final int SPARC_INS_UMUL = 267;
-	public static final int SPARC_INS_UNIMP = 268;
-	public static final int SPARC_INS_FCMPED = 269;
-	public static final int SPARC_INS_FCMPEQ = 270;
-	public static final int SPARC_INS_FCMPES = 271;
-	public static final int SPARC_INS_WR = 272;
-	public static final int SPARC_INS_XMULX = 273;
-	public static final int SPARC_INS_XMULXHI = 274;
-	public static final int SPARC_INS_XNORCC = 275;
-	public static final int SPARC_INS_XNOR = 276;
-	public static final int SPARC_INS_XORCC = 277;
-	public static final int SPARC_INS_XOR = 278;
-	public static final int SPARC_INS_MAX = 279;
+	public static final int SPARC_INS_B = 16;
+	public static final int SPARC_INS_JMP = 17;
+	public static final int SPARC_INS_BMASK = 18;
+	public static final int SPARC_INS_FB = 19;
+	public static final int SPARC_INS_BRGEZ = 20;
+	public static final int SPARC_INS_BRGZ = 21;
+	public static final int SPARC_INS_BRLEZ = 22;
+	public static final int SPARC_INS_BRLZ = 23;
+	public static final int SPARC_INS_BRNZ = 24;
+	public static final int SPARC_INS_BRZ = 25;
+	public static final int SPARC_INS_BSHUFFLE = 26;
+	public static final int SPARC_INS_CALL = 27;
+	public static final int SPARC_INS_CASX = 28;
+	public static final int SPARC_INS_CAS = 29;
+	public static final int SPARC_INS_CMASK16 = 30;
+	public static final int SPARC_INS_CMASK32 = 31;
+	public static final int SPARC_INS_CMASK8 = 32;
+	public static final int SPARC_INS_CMP = 33;
+	public static final int SPARC_INS_EDGE16 = 34;
+	public static final int SPARC_INS_EDGE16L = 35;
+	public static final int SPARC_INS_EDGE16LN = 36;
+	public static final int SPARC_INS_EDGE16N = 37;
+	public static final int SPARC_INS_EDGE32 = 38;
+	public static final int SPARC_INS_EDGE32L = 39;
+	public static final int SPARC_INS_EDGE32LN = 40;
+	public static final int SPARC_INS_EDGE32N = 41;
+	public static final int SPARC_INS_EDGE8 = 42;
+	public static final int SPARC_INS_EDGE8L = 43;
+	public static final int SPARC_INS_EDGE8LN = 44;
+	public static final int SPARC_INS_EDGE8N = 45;
+	public static final int SPARC_INS_FABSD = 46;
+	public static final int SPARC_INS_FABSQ = 47;
+	public static final int SPARC_INS_FABSS = 48;
+	public static final int SPARC_INS_FADDD = 49;
+	public static final int SPARC_INS_FADDQ = 50;
+	public static final int SPARC_INS_FADDS = 51;
+	public static final int SPARC_INS_FALIGNDATA = 52;
+	public static final int SPARC_INS_FAND = 53;
+	public static final int SPARC_INS_FANDNOT1 = 54;
+	public static final int SPARC_INS_FANDNOT1S = 55;
+	public static final int SPARC_INS_FANDNOT2 = 56;
+	public static final int SPARC_INS_FANDNOT2S = 57;
+	public static final int SPARC_INS_FANDS = 58;
+	public static final int SPARC_INS_FCHKSM16 = 59;
+	public static final int SPARC_INS_FCMPD = 60;
+	public static final int SPARC_INS_FCMPEQ16 = 61;
+	public static final int SPARC_INS_FCMPEQ32 = 62;
+	public static final int SPARC_INS_FCMPGT16 = 63;
+	public static final int SPARC_INS_FCMPGT32 = 64;
+	public static final int SPARC_INS_FCMPLE16 = 65;
+	public static final int SPARC_INS_FCMPLE32 = 66;
+	public static final int SPARC_INS_FCMPNE16 = 67;
+	public static final int SPARC_INS_FCMPNE32 = 68;
+	public static final int SPARC_INS_FCMPQ = 69;
+	public static final int SPARC_INS_FCMPS = 70;
+	public static final int SPARC_INS_FDIVD = 71;
+	public static final int SPARC_INS_FDIVQ = 72;
+	public static final int SPARC_INS_FDIVS = 73;
+	public static final int SPARC_INS_FDMULQ = 74;
+	public static final int SPARC_INS_FDTOI = 75;
+	public static final int SPARC_INS_FDTOQ = 76;
+	public static final int SPARC_INS_FDTOS = 77;
+	public static final int SPARC_INS_FDTOX = 78;
+	public static final int SPARC_INS_FEXPAND = 79;
+	public static final int SPARC_INS_FHADDD = 80;
+	public static final int SPARC_INS_FHADDS = 81;
+	public static final int SPARC_INS_FHSUBD = 82;
+	public static final int SPARC_INS_FHSUBS = 83;
+	public static final int SPARC_INS_FITOD = 84;
+	public static final int SPARC_INS_FITOQ = 85;
+	public static final int SPARC_INS_FITOS = 86;
+	public static final int SPARC_INS_FLCMPD = 87;
+	public static final int SPARC_INS_FLCMPS = 88;
+	public static final int SPARC_INS_FLUSHW = 89;
+	public static final int SPARC_INS_FMEAN16 = 90;
+	public static final int SPARC_INS_FMOVD = 91;
+	public static final int SPARC_INS_FMOVQ = 92;
+	public static final int SPARC_INS_FMOVRDGEZ = 93;
+	public static final int SPARC_INS_FMOVRQGEZ = 94;
+	public static final int SPARC_INS_FMOVRSGEZ = 95;
+	public static final int SPARC_INS_FMOVRDGZ = 96;
+	public static final int SPARC_INS_FMOVRQGZ = 97;
+	public static final int SPARC_INS_FMOVRSGZ = 98;
+	public static final int SPARC_INS_FMOVRDLEZ = 99;
+	public static final int SPARC_INS_FMOVRQLEZ = 100;
+	public static final int SPARC_INS_FMOVRSLEZ = 101;
+	public static final int SPARC_INS_FMOVRDLZ = 102;
+	public static final int SPARC_INS_FMOVRQLZ = 103;
+	public static final int SPARC_INS_FMOVRSLZ = 104;
+	public static final int SPARC_INS_FMOVRDNZ = 105;
+	public static final int SPARC_INS_FMOVRQNZ = 106;
+	public static final int SPARC_INS_FMOVRSNZ = 107;
+	public static final int SPARC_INS_FMOVRDZ = 108;
+	public static final int SPARC_INS_FMOVRQZ = 109;
+	public static final int SPARC_INS_FMOVRSZ = 110;
+	public static final int SPARC_INS_FMOVS = 111;
+	public static final int SPARC_INS_FMUL8SUX16 = 112;
+	public static final int SPARC_INS_FMUL8ULX16 = 113;
+	public static final int SPARC_INS_FMUL8X16 = 114;
+	public static final int SPARC_INS_FMUL8X16AL = 115;
+	public static final int SPARC_INS_FMUL8X16AU = 116;
+	public static final int SPARC_INS_FMULD = 117;
+	public static final int SPARC_INS_FMULD8SUX16 = 118;
+	public static final int SPARC_INS_FMULD8ULX16 = 119;
+	public static final int SPARC_INS_FMULQ = 120;
+	public static final int SPARC_INS_FMULS = 121;
+	public static final int SPARC_INS_FNADDD = 122;
+	public static final int SPARC_INS_FNADDS = 123;
+	public static final int SPARC_INS_FNAND = 124;
+	public static final int SPARC_INS_FNANDS = 125;
+	public static final int SPARC_INS_FNEGD = 126;
+	public static final int SPARC_INS_FNEGQ = 127;
+	public static final int SPARC_INS_FNEGS = 128;
+	public static final int SPARC_INS_FNHADDD = 129;
+	public static final int SPARC_INS_FNHADDS = 130;
+	public static final int SPARC_INS_FNOR = 131;
+	public static final int SPARC_INS_FNORS = 132;
+	public static final int SPARC_INS_FNOT1 = 133;
+	public static final int SPARC_INS_FNOT1S = 134;
+	public static final int SPARC_INS_FNOT2 = 135;
+	public static final int SPARC_INS_FNOT2S = 136;
+	public static final int SPARC_INS_FONE = 137;
+	public static final int SPARC_INS_FONES = 138;
+	public static final int SPARC_INS_FOR = 139;
+	public static final int SPARC_INS_FORNOT1 = 140;
+	public static final int SPARC_INS_FORNOT1S = 141;
+	public static final int SPARC_INS_FORNOT2 = 142;
+	public static final int SPARC_INS_FORNOT2S = 143;
+	public static final int SPARC_INS_FORS = 144;
+	public static final int SPARC_INS_FPACK16 = 145;
+	public static final int SPARC_INS_FPACK32 = 146;
+	public static final int SPARC_INS_FPACKFIX = 147;
+	public static final int SPARC_INS_FPADD16 = 148;
+	public static final int SPARC_INS_FPADD16S = 149;
+	public static final int SPARC_INS_FPADD32 = 150;
+	public static final int SPARC_INS_FPADD32S = 151;
+	public static final int SPARC_INS_FPADD64 = 152;
+	public static final int SPARC_INS_FPMERGE = 153;
+	public static final int SPARC_INS_FPSUB16 = 154;
+	public static final int SPARC_INS_FPSUB16S = 155;
+	public static final int SPARC_INS_FPSUB32 = 156;
+	public static final int SPARC_INS_FPSUB32S = 157;
+	public static final int SPARC_INS_FQTOD = 158;
+	public static final int SPARC_INS_FQTOI = 159;
+	public static final int SPARC_INS_FQTOS = 160;
+	public static final int SPARC_INS_FQTOX = 161;
+	public static final int SPARC_INS_FSLAS16 = 162;
+	public static final int SPARC_INS_FSLAS32 = 163;
+	public static final int SPARC_INS_FSLL16 = 164;
+	public static final int SPARC_INS_FSLL32 = 165;
+	public static final int SPARC_INS_FSMULD = 166;
+	public static final int SPARC_INS_FSQRTD = 167;
+	public static final int SPARC_INS_FSQRTQ = 168;
+	public static final int SPARC_INS_FSQRTS = 169;
+	public static final int SPARC_INS_FSRA16 = 170;
+	public static final int SPARC_INS_FSRA32 = 171;
+	public static final int SPARC_INS_FSRC1 = 172;
+	public static final int SPARC_INS_FSRC1S = 173;
+	public static final int SPARC_INS_FSRC2 = 174;
+	public static final int SPARC_INS_FSRC2S = 175;
+	public static final int SPARC_INS_FSRL16 = 176;
+	public static final int SPARC_INS_FSRL32 = 177;
+	public static final int SPARC_INS_FSTOD = 178;
+	public static final int SPARC_INS_FSTOI = 179;
+	public static final int SPARC_INS_FSTOQ = 180;
+	public static final int SPARC_INS_FSTOX = 181;
+	public static final int SPARC_INS_FSUBD = 182;
+	public static final int SPARC_INS_FSUBQ = 183;
+	public static final int SPARC_INS_FSUBS = 184;
+	public static final int SPARC_INS_FXNOR = 185;
+	public static final int SPARC_INS_FXNORS = 186;
+	public static final int SPARC_INS_FXOR = 187;
+	public static final int SPARC_INS_FXORS = 188;
+	public static final int SPARC_INS_FXTOD = 189;
+	public static final int SPARC_INS_FXTOQ = 190;
+	public static final int SPARC_INS_FXTOS = 191;
+	public static final int SPARC_INS_FZERO = 192;
+	public static final int SPARC_INS_FZEROS = 193;
+	public static final int SPARC_INS_JMPL = 194;
+	public static final int SPARC_INS_LDD = 195;
+	public static final int SPARC_INS_LD = 196;
+	public static final int SPARC_INS_LDQ = 197;
+	public static final int SPARC_INS_LDSB = 198;
+	public static final int SPARC_INS_LDSH = 199;
+	public static final int SPARC_INS_LDSW = 200;
+	public static final int SPARC_INS_LDUB = 201;
+	public static final int SPARC_INS_LDUH = 202;
+	public static final int SPARC_INS_LDX = 203;
+	public static final int SPARC_INS_LZCNT = 204;
+	public static final int SPARC_INS_MEMBAR = 205;
+	public static final int SPARC_INS_MOVDTOX = 206;
+	public static final int SPARC_INS_MOV = 207;
+	public static final int SPARC_INS_MOVRGEZ = 208;
+	public static final int SPARC_INS_MOVRGZ = 209;
+	public static final int SPARC_INS_MOVRLEZ = 210;
+	public static final int SPARC_INS_MOVRLZ = 211;
+	public static final int SPARC_INS_MOVRNZ = 212;
+	public static final int SPARC_INS_MOVRZ = 213;
+	public static final int SPARC_INS_MOVSTOSW = 214;
+	public static final int SPARC_INS_MOVSTOUW = 215;
+	public static final int SPARC_INS_MULX = 216;
+	public static final int SPARC_INS_NOP = 217;
+	public static final int SPARC_INS_ORCC = 218;
+	public static final int SPARC_INS_ORNCC = 219;
+	public static final int SPARC_INS_ORN = 220;
+	public static final int SPARC_INS_OR = 221;
+	public static final int SPARC_INS_PDIST = 222;
+	public static final int SPARC_INS_PDISTN = 223;
+	public static final int SPARC_INS_POPC = 224;
+	public static final int SPARC_INS_RD = 225;
+	public static final int SPARC_INS_RESTORE = 226;
+	public static final int SPARC_INS_RETT = 227;
+	public static final int SPARC_INS_SAVE = 228;
+	public static final int SPARC_INS_SDIVCC = 229;
+	public static final int SPARC_INS_SDIVX = 230;
+	public static final int SPARC_INS_SDIV = 231;
+	public static final int SPARC_INS_SETHI = 232;
+	public static final int SPARC_INS_SHUTDOWN = 233;
+	public static final int SPARC_INS_SIAM = 234;
+	public static final int SPARC_INS_SLLX = 235;
+	public static final int SPARC_INS_SLL = 236;
+	public static final int SPARC_INS_SMULCC = 237;
+	public static final int SPARC_INS_SMUL = 238;
+	public static final int SPARC_INS_SRAX = 239;
+	public static final int SPARC_INS_SRA = 240;
+	public static final int SPARC_INS_SRLX = 241;
+	public static final int SPARC_INS_SRL = 242;
+	public static final int SPARC_INS_STBAR = 243;
+	public static final int SPARC_INS_STB = 244;
+	public static final int SPARC_INS_STD = 245;
+	public static final int SPARC_INS_ST = 246;
+	public static final int SPARC_INS_STH = 247;
+	public static final int SPARC_INS_STQ = 248;
+	public static final int SPARC_INS_STX = 249;
+	public static final int SPARC_INS_SUBCC = 250;
+	public static final int SPARC_INS_SUBX = 251;
+	public static final int SPARC_INS_SUBXCC = 252;
+	public static final int SPARC_INS_SUB = 253;
+	public static final int SPARC_INS_SWAP = 254;
+	public static final int SPARC_INS_TADDCCTV = 255;
+	public static final int SPARC_INS_TADDCC = 256;
+	public static final int SPARC_INS_T = 257;
+	public static final int SPARC_INS_TSUBCCTV = 258;
+	public static final int SPARC_INS_TSUBCC = 259;
+	public static final int SPARC_INS_UDIVCC = 260;
+	public static final int SPARC_INS_UDIVX = 261;
+	public static final int SPARC_INS_UDIV = 262;
+	public static final int SPARC_INS_UMULCC = 263;
+	public static final int SPARC_INS_UMULXHI = 264;
+	public static final int SPARC_INS_UMUL = 265;
+	public static final int SPARC_INS_UNIMP = 266;
+	public static final int SPARC_INS_FCMPED = 267;
+	public static final int SPARC_INS_FCMPEQ = 268;
+	public static final int SPARC_INS_FCMPES = 269;
+	public static final int SPARC_INS_WR = 270;
+	public static final int SPARC_INS_XMULX = 271;
+	public static final int SPARC_INS_XMULXHI = 272;
+	public static final int SPARC_INS_XNORCC = 273;
+	public static final int SPARC_INS_XNOR = 274;
+	public static final int SPARC_INS_XORCC = 275;
+	public static final int SPARC_INS_XOR = 276;
+	public static final int SPARC_INS_MAX = 277;
 
 	// Group of SPARC instructions
 
diff --git a/bindings/python/capstone/sparc_const.py b/bindings/python/capstone/sparc_const.py
index 1c39e2c..d589d1e 100644
--- a/bindings/python/capstone/sparc_const.py
+++ b/bindings/python/capstone/sparc_const.py
@@ -165,270 +165,268 @@
 SPARC_INS_ARRAY16 = 13
 SPARC_INS_ARRAY32 = 14
 SPARC_INS_ARRAY8 = 15
-SPARC_INS_BA = 16
-SPARC_INS_B = 17
-SPARC_INS_JMP = 18
-SPARC_INS_BMASK = 19
-SPARC_INS_FB = 20
-SPARC_INS_BRGEZ = 21
-SPARC_INS_BRGZ = 22
-SPARC_INS_BRLEZ = 23
-SPARC_INS_BRLZ = 24
-SPARC_INS_BRNZ = 25
-SPARC_INS_BRZ = 26
-SPARC_INS_BSHUFFLE = 27
-SPARC_INS_CALL = 28
-SPARC_INS_CASX = 29
-SPARC_INS_CAS = 30
-SPARC_INS_CMASK16 = 31
-SPARC_INS_CMASK32 = 32
-SPARC_INS_CMASK8 = 33
-SPARC_INS_CMP = 34
-SPARC_INS_EDGE16 = 35
-SPARC_INS_EDGE16L = 36
-SPARC_INS_EDGE16LN = 37
-SPARC_INS_EDGE16N = 38
-SPARC_INS_EDGE32 = 39
-SPARC_INS_EDGE32L = 40
-SPARC_INS_EDGE32LN = 41
-SPARC_INS_EDGE32N = 42
-SPARC_INS_EDGE8 = 43
-SPARC_INS_EDGE8L = 44
-SPARC_INS_EDGE8LN = 45
-SPARC_INS_EDGE8N = 46
-SPARC_INS_FABSD = 47
-SPARC_INS_FABSQ = 48
-SPARC_INS_FABSS = 49
-SPARC_INS_FADDD = 50
-SPARC_INS_FADDQ = 51
-SPARC_INS_FADDS = 52
-SPARC_INS_FALIGNDATA = 53
-SPARC_INS_FAND = 54
-SPARC_INS_FANDNOT1 = 55
-SPARC_INS_FANDNOT1S = 56
-SPARC_INS_FANDNOT2 = 57
-SPARC_INS_FANDNOT2S = 58
-SPARC_INS_FANDS = 59
-SPARC_INS_FCHKSM16 = 60
-SPARC_INS_FCMPD = 61
-SPARC_INS_FCMPEQ16 = 62
-SPARC_INS_FCMPEQ32 = 63
-SPARC_INS_FCMPGT16 = 64
-SPARC_INS_FCMPGT32 = 65
-SPARC_INS_FCMPLE16 = 66
-SPARC_INS_FCMPLE32 = 67
-SPARC_INS_FCMPNE16 = 68
-SPARC_INS_FCMPNE32 = 69
-SPARC_INS_FCMPQ = 70
-SPARC_INS_FCMPS = 71
-SPARC_INS_FDIVD = 72
-SPARC_INS_FDIVQ = 73
-SPARC_INS_FDIVS = 74
-SPARC_INS_FDMULQ = 75
-SPARC_INS_FDTOI = 76
-SPARC_INS_FDTOQ = 77
-SPARC_INS_FDTOS = 78
-SPARC_INS_FDTOX = 79
-SPARC_INS_FEXPAND = 80
-SPARC_INS_FHADDD = 81
-SPARC_INS_FHADDS = 82
-SPARC_INS_FHSUBD = 83
-SPARC_INS_FHSUBS = 84
-SPARC_INS_FITOD = 85
-SPARC_INS_FITOQ = 86
-SPARC_INS_FITOS = 87
-SPARC_INS_FLCMPD = 88
-SPARC_INS_FLCMPS = 89
-SPARC_INS_FLUSHW = 90
-SPARC_INS_FMEAN16 = 91
-SPARC_INS_FMOVD = 92
-SPARC_INS_FMOVQ = 93
-SPARC_INS_FMOVRDGEZ = 94
-SPARC_INS_FMOVRQGEZ = 95
-SPARC_INS_FMOVRSGEZ = 96
-SPARC_INS_FMOVRDGZ = 97
-SPARC_INS_FMOVRQGZ = 98
-SPARC_INS_FMOVRSGZ = 99
-SPARC_INS_FMOVRDLEZ = 100
-SPARC_INS_FMOVRQLEZ = 101
-SPARC_INS_FMOVRSLEZ = 102
-SPARC_INS_FMOVRDLZ = 103
-SPARC_INS_FMOVRQLZ = 104
-SPARC_INS_FMOVRSLZ = 105
-SPARC_INS_FMOVRDNZ = 106
-SPARC_INS_FMOVRQNZ = 107
-SPARC_INS_FMOVRSNZ = 108
-SPARC_INS_FMOVRDZ = 109
-SPARC_INS_FMOVRQZ = 110
-SPARC_INS_FMOVRSZ = 111
-SPARC_INS_FMOVS = 112
-SPARC_INS_FMUL8SUX16 = 113
-SPARC_INS_FMUL8ULX16 = 114
-SPARC_INS_FMUL8X16 = 115
-SPARC_INS_FMUL8X16AL = 116
-SPARC_INS_FMUL8X16AU = 117
-SPARC_INS_FMULD = 118
-SPARC_INS_FMULD8SUX16 = 119
-SPARC_INS_FMULD8ULX16 = 120
-SPARC_INS_FMULQ = 121
-SPARC_INS_FMULS = 122
-SPARC_INS_FNADDD = 123
-SPARC_INS_FNADDS = 124
-SPARC_INS_FNAND = 125
-SPARC_INS_FNANDS = 126
-SPARC_INS_FNEGD = 127
-SPARC_INS_FNEGQ = 128
-SPARC_INS_FNEGS = 129
-SPARC_INS_FNHADDD = 130
-SPARC_INS_FNHADDS = 131
-SPARC_INS_FNOR = 132
-SPARC_INS_FNORS = 133
-SPARC_INS_FNOT1 = 134
-SPARC_INS_FNOT1S = 135
-SPARC_INS_FNOT2 = 136
-SPARC_INS_FNOT2S = 137
-SPARC_INS_FONE = 138
-SPARC_INS_FONES = 139
-SPARC_INS_FOR = 140
-SPARC_INS_FORNOT1 = 141
-SPARC_INS_FORNOT1S = 142
-SPARC_INS_FORNOT2 = 143
-SPARC_INS_FORNOT2S = 144
-SPARC_INS_FORS = 145
-SPARC_INS_FPACK16 = 146
-SPARC_INS_FPACK32 = 147
-SPARC_INS_FPACKFIX = 148
-SPARC_INS_FPADD16 = 149
-SPARC_INS_FPADD16S = 150
-SPARC_INS_FPADD32 = 151
-SPARC_INS_FPADD32S = 152
-SPARC_INS_FPADD64 = 153
-SPARC_INS_FPMERGE = 154
-SPARC_INS_FPSUB16 = 155
-SPARC_INS_FPSUB16S = 156
-SPARC_INS_FPSUB32 = 157
-SPARC_INS_FPSUB32S = 158
-SPARC_INS_FQTOD = 159
-SPARC_INS_FQTOI = 160
-SPARC_INS_FQTOS = 161
-SPARC_INS_FQTOX = 162
-SPARC_INS_FSLAS16 = 163
-SPARC_INS_FSLAS32 = 164
-SPARC_INS_FSLL16 = 165
-SPARC_INS_FSLL32 = 166
-SPARC_INS_FSMULD = 167
-SPARC_INS_FSQRTD = 168
-SPARC_INS_FSQRTQ = 169
-SPARC_INS_FSQRTS = 170
-SPARC_INS_FSRA16 = 171
-SPARC_INS_FSRA32 = 172
-SPARC_INS_FSRC1 = 173
-SPARC_INS_FSRC1S = 174
-SPARC_INS_FSRC2 = 175
-SPARC_INS_FSRC2S = 176
-SPARC_INS_FSRL16 = 177
-SPARC_INS_FSRL32 = 178
-SPARC_INS_FSTOD = 179
-SPARC_INS_FSTOI = 180
-SPARC_INS_FSTOQ = 181
-SPARC_INS_FSTOX = 182
-SPARC_INS_FSUBD = 183
-SPARC_INS_FSUBQ = 184
-SPARC_INS_FSUBS = 185
-SPARC_INS_FXNOR = 186
-SPARC_INS_FXNORS = 187
-SPARC_INS_FXOR = 188
-SPARC_INS_FXORS = 189
-SPARC_INS_FXTOD = 190
-SPARC_INS_FXTOQ = 191
-SPARC_INS_FXTOS = 192
-SPARC_INS_FZERO = 193
-SPARC_INS_FZEROS = 194
-SPARC_INS_JMPL = 195
-SPARC_INS_LDD = 196
-SPARC_INS_LD = 197
-SPARC_INS_LDQ = 198
-SPARC_INS_LDSB = 199
-SPARC_INS_LDSH = 200
-SPARC_INS_LDSW = 201
-SPARC_INS_LDUB = 202
-SPARC_INS_LDUH = 203
-SPARC_INS_LDX = 204
-SPARC_INS_LZCNT = 205
-SPARC_INS_MEMBAR = 206
-SPARC_INS_MOVDTOX = 207
-SPARC_INS_MOV = 208
-SPARC_INS_MOVRGEZ = 209
-SPARC_INS_MOVRGZ = 210
-SPARC_INS_MOVRLEZ = 211
-SPARC_INS_MOVRLZ = 212
-SPARC_INS_MOVRNZ = 213
-SPARC_INS_MOVRZ = 214
-SPARC_INS_MOVSTOSW = 215
-SPARC_INS_MOVSTOUW = 216
-SPARC_INS_MULX = 217
-SPARC_INS_NOP = 218
-SPARC_INS_ORCC = 219
-SPARC_INS_ORNCC = 220
-SPARC_INS_ORN = 221
-SPARC_INS_OR = 222
-SPARC_INS_PDIST = 223
-SPARC_INS_PDISTN = 224
-SPARC_INS_POPC = 225
-SPARC_INS_RD = 226
-SPARC_INS_RESTORE = 227
-SPARC_INS_RETT = 228
-SPARC_INS_SAVE = 229
-SPARC_INS_SDIVCC = 230
-SPARC_INS_SDIVX = 231
-SPARC_INS_SDIV = 232
-SPARC_INS_SETHI = 233
-SPARC_INS_SHUTDOWN = 234
-SPARC_INS_SIAM = 235
-SPARC_INS_SLLX = 236
-SPARC_INS_SLL = 237
-SPARC_INS_SMULCC = 238
-SPARC_INS_SMUL = 239
-SPARC_INS_SRAX = 240
-SPARC_INS_SRA = 241
-SPARC_INS_SRLX = 242
-SPARC_INS_SRL = 243
-SPARC_INS_STBAR = 244
-SPARC_INS_STB = 245
-SPARC_INS_STD = 246
-SPARC_INS_ST = 247
-SPARC_INS_STH = 248
-SPARC_INS_STQ = 249
-SPARC_INS_STX = 250
-SPARC_INS_SUBCC = 251
-SPARC_INS_SUBX = 252
-SPARC_INS_SUBXCC = 253
-SPARC_INS_SUB = 254
-SPARC_INS_SWAP = 255
-SPARC_INS_TA = 256
-SPARC_INS_TADDCCTV = 257
-SPARC_INS_TADDCC = 258
-SPARC_INS_T = 259
-SPARC_INS_TSUBCCTV = 260
-SPARC_INS_TSUBCC = 261
-SPARC_INS_UDIVCC = 262
-SPARC_INS_UDIVX = 263
-SPARC_INS_UDIV = 264
-SPARC_INS_UMULCC = 265
-SPARC_INS_UMULXHI = 266
-SPARC_INS_UMUL = 267
-SPARC_INS_UNIMP = 268
-SPARC_INS_FCMPED = 269
-SPARC_INS_FCMPEQ = 270
-SPARC_INS_FCMPES = 271
-SPARC_INS_WR = 272
-SPARC_INS_XMULX = 273
-SPARC_INS_XMULXHI = 274
-SPARC_INS_XNORCC = 275
-SPARC_INS_XNOR = 276
-SPARC_INS_XORCC = 277
-SPARC_INS_XOR = 278
-SPARC_INS_MAX = 279
+SPARC_INS_B = 16
+SPARC_INS_JMP = 17
+SPARC_INS_BMASK = 18
+SPARC_INS_FB = 19
+SPARC_INS_BRGEZ = 20
+SPARC_INS_BRGZ = 21
+SPARC_INS_BRLEZ = 22
+SPARC_INS_BRLZ = 23
+SPARC_INS_BRNZ = 24
+SPARC_INS_BRZ = 25
+SPARC_INS_BSHUFFLE = 26
+SPARC_INS_CALL = 27
+SPARC_INS_CASX = 28
+SPARC_INS_CAS = 29
+SPARC_INS_CMASK16 = 30
+SPARC_INS_CMASK32 = 31
+SPARC_INS_CMASK8 = 32
+SPARC_INS_CMP = 33
+SPARC_INS_EDGE16 = 34
+SPARC_INS_EDGE16L = 35
+SPARC_INS_EDGE16LN = 36
+SPARC_INS_EDGE16N = 37
+SPARC_INS_EDGE32 = 38
+SPARC_INS_EDGE32L = 39
+SPARC_INS_EDGE32LN = 40
+SPARC_INS_EDGE32N = 41
+SPARC_INS_EDGE8 = 42
+SPARC_INS_EDGE8L = 43
+SPARC_INS_EDGE8LN = 44
+SPARC_INS_EDGE8N = 45
+SPARC_INS_FABSD = 46
+SPARC_INS_FABSQ = 47
+SPARC_INS_FABSS = 48
+SPARC_INS_FADDD = 49
+SPARC_INS_FADDQ = 50
+SPARC_INS_FADDS = 51
+SPARC_INS_FALIGNDATA = 52
+SPARC_INS_FAND = 53
+SPARC_INS_FANDNOT1 = 54
+SPARC_INS_FANDNOT1S = 55
+SPARC_INS_FANDNOT2 = 56
+SPARC_INS_FANDNOT2S = 57
+SPARC_INS_FANDS = 58
+SPARC_INS_FCHKSM16 = 59
+SPARC_INS_FCMPD = 60
+SPARC_INS_FCMPEQ16 = 61
+SPARC_INS_FCMPEQ32 = 62
+SPARC_INS_FCMPGT16 = 63
+SPARC_INS_FCMPGT32 = 64
+SPARC_INS_FCMPLE16 = 65
+SPARC_INS_FCMPLE32 = 66
+SPARC_INS_FCMPNE16 = 67
+SPARC_INS_FCMPNE32 = 68
+SPARC_INS_FCMPQ = 69
+SPARC_INS_FCMPS = 70
+SPARC_INS_FDIVD = 71
+SPARC_INS_FDIVQ = 72
+SPARC_INS_FDIVS = 73
+SPARC_INS_FDMULQ = 74
+SPARC_INS_FDTOI = 75
+SPARC_INS_FDTOQ = 76
+SPARC_INS_FDTOS = 77
+SPARC_INS_FDTOX = 78
+SPARC_INS_FEXPAND = 79
+SPARC_INS_FHADDD = 80
+SPARC_INS_FHADDS = 81
+SPARC_INS_FHSUBD = 82
+SPARC_INS_FHSUBS = 83
+SPARC_INS_FITOD = 84
+SPARC_INS_FITOQ = 85
+SPARC_INS_FITOS = 86
+SPARC_INS_FLCMPD = 87
+SPARC_INS_FLCMPS = 88
+SPARC_INS_FLUSHW = 89
+SPARC_INS_FMEAN16 = 90
+SPARC_INS_FMOVD = 91
+SPARC_INS_FMOVQ = 92
+SPARC_INS_FMOVRDGEZ = 93
+SPARC_INS_FMOVRQGEZ = 94
+SPARC_INS_FMOVRSGEZ = 95
+SPARC_INS_FMOVRDGZ = 96
+SPARC_INS_FMOVRQGZ = 97
+SPARC_INS_FMOVRSGZ = 98
+SPARC_INS_FMOVRDLEZ = 99
+SPARC_INS_FMOVRQLEZ = 100
+SPARC_INS_FMOVRSLEZ = 101
+SPARC_INS_FMOVRDLZ = 102
+SPARC_INS_FMOVRQLZ = 103
+SPARC_INS_FMOVRSLZ = 104
+SPARC_INS_FMOVRDNZ = 105
+SPARC_INS_FMOVRQNZ = 106
+SPARC_INS_FMOVRSNZ = 107
+SPARC_INS_FMOVRDZ = 108
+SPARC_INS_FMOVRQZ = 109
+SPARC_INS_FMOVRSZ = 110
+SPARC_INS_FMOVS = 111
+SPARC_INS_FMUL8SUX16 = 112
+SPARC_INS_FMUL8ULX16 = 113
+SPARC_INS_FMUL8X16 = 114
+SPARC_INS_FMUL8X16AL = 115
+SPARC_INS_FMUL8X16AU = 116
+SPARC_INS_FMULD = 117
+SPARC_INS_FMULD8SUX16 = 118
+SPARC_INS_FMULD8ULX16 = 119
+SPARC_INS_FMULQ = 120
+SPARC_INS_FMULS = 121
+SPARC_INS_FNADDD = 122
+SPARC_INS_FNADDS = 123
+SPARC_INS_FNAND = 124
+SPARC_INS_FNANDS = 125
+SPARC_INS_FNEGD = 126
+SPARC_INS_FNEGQ = 127
+SPARC_INS_FNEGS = 128
+SPARC_INS_FNHADDD = 129
+SPARC_INS_FNHADDS = 130
+SPARC_INS_FNOR = 131
+SPARC_INS_FNORS = 132
+SPARC_INS_FNOT1 = 133
+SPARC_INS_FNOT1S = 134
+SPARC_INS_FNOT2 = 135
+SPARC_INS_FNOT2S = 136
+SPARC_INS_FONE = 137
+SPARC_INS_FONES = 138
+SPARC_INS_FOR = 139
+SPARC_INS_FORNOT1 = 140
+SPARC_INS_FORNOT1S = 141
+SPARC_INS_FORNOT2 = 142
+SPARC_INS_FORNOT2S = 143
+SPARC_INS_FORS = 144
+SPARC_INS_FPACK16 = 145
+SPARC_INS_FPACK32 = 146
+SPARC_INS_FPACKFIX = 147
+SPARC_INS_FPADD16 = 148
+SPARC_INS_FPADD16S = 149
+SPARC_INS_FPADD32 = 150
+SPARC_INS_FPADD32S = 151
+SPARC_INS_FPADD64 = 152
+SPARC_INS_FPMERGE = 153
+SPARC_INS_FPSUB16 = 154
+SPARC_INS_FPSUB16S = 155
+SPARC_INS_FPSUB32 = 156
+SPARC_INS_FPSUB32S = 157
+SPARC_INS_FQTOD = 158
+SPARC_INS_FQTOI = 159
+SPARC_INS_FQTOS = 160
+SPARC_INS_FQTOX = 161
+SPARC_INS_FSLAS16 = 162
+SPARC_INS_FSLAS32 = 163
+SPARC_INS_FSLL16 = 164
+SPARC_INS_FSLL32 = 165
+SPARC_INS_FSMULD = 166
+SPARC_INS_FSQRTD = 167
+SPARC_INS_FSQRTQ = 168
+SPARC_INS_FSQRTS = 169
+SPARC_INS_FSRA16 = 170
+SPARC_INS_FSRA32 = 171
+SPARC_INS_FSRC1 = 172
+SPARC_INS_FSRC1S = 173
+SPARC_INS_FSRC2 = 174
+SPARC_INS_FSRC2S = 175
+SPARC_INS_FSRL16 = 176
+SPARC_INS_FSRL32 = 177
+SPARC_INS_FSTOD = 178
+SPARC_INS_FSTOI = 179
+SPARC_INS_FSTOQ = 180
+SPARC_INS_FSTOX = 181
+SPARC_INS_FSUBD = 182
+SPARC_INS_FSUBQ = 183
+SPARC_INS_FSUBS = 184
+SPARC_INS_FXNOR = 185
+SPARC_INS_FXNORS = 186
+SPARC_INS_FXOR = 187
+SPARC_INS_FXORS = 188
+SPARC_INS_FXTOD = 189
+SPARC_INS_FXTOQ = 190
+SPARC_INS_FXTOS = 191
+SPARC_INS_FZERO = 192
+SPARC_INS_FZEROS = 193
+SPARC_INS_JMPL = 194
+SPARC_INS_LDD = 195
+SPARC_INS_LD = 196
+SPARC_INS_LDQ = 197
+SPARC_INS_LDSB = 198
+SPARC_INS_LDSH = 199
+SPARC_INS_LDSW = 200
+SPARC_INS_LDUB = 201
+SPARC_INS_LDUH = 202
+SPARC_INS_LDX = 203
+SPARC_INS_LZCNT = 204
+SPARC_INS_MEMBAR = 205
+SPARC_INS_MOVDTOX = 206
+SPARC_INS_MOV = 207
+SPARC_INS_MOVRGEZ = 208
+SPARC_INS_MOVRGZ = 209
+SPARC_INS_MOVRLEZ = 210
+SPARC_INS_MOVRLZ = 211
+SPARC_INS_MOVRNZ = 212
+SPARC_INS_MOVRZ = 213
+SPARC_INS_MOVSTOSW = 214
+SPARC_INS_MOVSTOUW = 215
+SPARC_INS_MULX = 216
+SPARC_INS_NOP = 217
+SPARC_INS_ORCC = 218
+SPARC_INS_ORNCC = 219
+SPARC_INS_ORN = 220
+SPARC_INS_OR = 221
+SPARC_INS_PDIST = 222
+SPARC_INS_PDISTN = 223
+SPARC_INS_POPC = 224
+SPARC_INS_RD = 225
+SPARC_INS_RESTORE = 226
+SPARC_INS_RETT = 227
+SPARC_INS_SAVE = 228
+SPARC_INS_SDIVCC = 229
+SPARC_INS_SDIVX = 230
+SPARC_INS_SDIV = 231
+SPARC_INS_SETHI = 232
+SPARC_INS_SHUTDOWN = 233
+SPARC_INS_SIAM = 234
+SPARC_INS_SLLX = 235
+SPARC_INS_SLL = 236
+SPARC_INS_SMULCC = 237
+SPARC_INS_SMUL = 238
+SPARC_INS_SRAX = 239
+SPARC_INS_SRA = 240
+SPARC_INS_SRLX = 241
+SPARC_INS_SRL = 242
+SPARC_INS_STBAR = 243
+SPARC_INS_STB = 244
+SPARC_INS_STD = 245
+SPARC_INS_ST = 246
+SPARC_INS_STH = 247
+SPARC_INS_STQ = 248
+SPARC_INS_STX = 249
+SPARC_INS_SUBCC = 250
+SPARC_INS_SUBX = 251
+SPARC_INS_SUBXCC = 252
+SPARC_INS_SUB = 253
+SPARC_INS_SWAP = 254
+SPARC_INS_TADDCCTV = 255
+SPARC_INS_TADDCC = 256
+SPARC_INS_T = 257
+SPARC_INS_TSUBCCTV = 258
+SPARC_INS_TSUBCC = 259
+SPARC_INS_UDIVCC = 260
+SPARC_INS_UDIVX = 261
+SPARC_INS_UDIV = 262
+SPARC_INS_UMULCC = 263
+SPARC_INS_UMULXHI = 264
+SPARC_INS_UMUL = 265
+SPARC_INS_UNIMP = 266
+SPARC_INS_FCMPED = 267
+SPARC_INS_FCMPEQ = 268
+SPARC_INS_FCMPES = 269
+SPARC_INS_WR = 270
+SPARC_INS_XMULX = 271
+SPARC_INS_XMULXHI = 272
+SPARC_INS_XNORCC = 273
+SPARC_INS_XNOR = 274
+SPARC_INS_XORCC = 275
+SPARC_INS_XOR = 276
+SPARC_INS_MAX = 277
 
 # Group of SPARC instructions
 
diff --git a/include/sparc.h b/include/sparc.h
index f6f4ac3..69dd833 100644
--- a/include/sparc.h
+++ b/include/sparc.h
@@ -220,7 +220,6 @@
 	SPARC_INS_ARRAY16,
 	SPARC_INS_ARRAY32,
 	SPARC_INS_ARRAY8,
-	SPARC_INS_BA,
 	SPARC_INS_B,
 	SPARC_INS_JMP,
 	SPARC_INS_BMASK,
@@ -460,7 +459,6 @@
 	SPARC_INS_SUBXCC,
 	SPARC_INS_SUB,
 	SPARC_INS_SWAP,
-	SPARC_INS_TA,
 	SPARC_INS_TADDCCTV,
 	SPARC_INS_TADDCC,
 	SPARC_INS_T,