Upper all inc and fix

This commit is contained in:
billow 2023-05-01 22:52:47 +08:00
parent 620f0d0756
commit 985b6fcb07
No known key found for this signature in database
GPG Key ID: CA735DC44D699DE6
17 changed files with 7968 additions and 7865 deletions

View File

@ -189,25 +189,25 @@ bool TriCore_getFeatureBits(unsigned int mode, unsigned int feature)
{
switch (mode) {
case CS_MODE_TRICORE_110: {
return feature == TriCore_HasV110Ops;
return feature == TRICORE_HasV110Ops;
}
case CS_MODE_TRICORE_120: {
return feature == TriCore_HasV120Ops;
return feature == TRICORE_HasV120Ops;
}
case CS_MODE_TRICORE_130: {
return feature == TriCore_HasV130Ops;
return feature == TRICORE_HasV130Ops;
}
case CS_MODE_TRICORE_131: {
return feature == TriCore_HasV131Ops;
return feature == TRICORE_HasV131Ops;
}
case CS_MODE_TRICORE_160: {
return feature == TriCore_HasV160Ops;
return feature == TRICORE_HasV160Ops;
}
case CS_MODE_TRICORE_161: {
return feature == TriCore_HasV161Ops;
return feature == TRICORE_HasV161Ops;
}
case CS_MODE_TRICORE_162: {
return feature == TriCore_HasV162Ops;
return feature == TRICORE_HasV162Ops;
}
default:
return false;
@ -512,13 +512,13 @@ static DecodeStatus DecodeBOLInstruction(MCInst *Inst, unsigned Insn,
const MCInstrDesc *desc = &TriCoreInsts[MCInst_getOpcode(Inst)];
switch (MCInst_getOpcode(Inst)) {
case TriCore_LD_A_bol:
case TriCore_LD_B_bol:
case TriCore_LD_BU_bol:
case TriCore_LD_H_bol:
case TriCore_LD_HU_bol:
case TriCore_LD_W_bol:
case TriCore_LEA_bol: {
case TRICORE_LD_A_bol:
case TRICORE_LD_B_bol:
case TRICORE_LD_BU_bol:
case TRICORE_LD_H_bol:
case TRICORE_LD_HU_bol:
case TRICORE_LD_W_bol:
case TRICORE_LEA_bol: {
// Decode s1_d.
status = DecodeRegisterClass(Inst, s1_d, &desc->OpInfo[0],
Decoder);
@ -532,10 +532,10 @@ static DecodeStatus DecodeBOLInstruction(MCInst *Inst, unsigned Insn,
return status;
break;
}
case TriCore_ST_A_bol:
case TriCore_ST_B_bol:
case TriCore_ST_H_bol:
case TriCore_ST_W_bol: {
case TRICORE_ST_A_bol:
case TRICORE_ST_B_bol:
case TRICORE_ST_H_bol:
case TRICORE_ST_W_bol: {
// Decode s2.
status = DecodeRegisterClass(Inst, s2, &desc->OpInfo[0],
Decoder);
@ -698,7 +698,7 @@ static DecodeStatus DecodeRRInstruction(MCInst *Inst, unsigned Insn,
if (desc->NumOperands == 1) {
if (desc->OpInfo[0].OperandType == MCOI_OPERAND_REGISTER) {
switch (MCInst_getOpcode(Inst)) {
case TriCore_CALLI_rr_v110: {
case TRICORE_CALLI_rr_v110: {
return DecodeRegisterClass(
Inst, s2, &desc->OpInfo[0], Decoder);
}
@ -1308,7 +1308,7 @@ static DecodeStatus DecodeBRRInstruction(MCInst *Inst, unsigned Insn,
return MCDisassembler_Fail;
const MCInstrDesc *desc = &TriCoreInsts[MCInst_getOpcode(Inst)];
if (MCInst_getOpcode(Inst) == TriCore_LOOP_brr) {
if (MCInst_getOpcode(Inst) == TRICORE_LOOP_brr) {
status = DecodeRegisterClass(Inst, s2, &desc->OpInfo[0],
Decoder);
if (status != MCDisassembler_Success)

View File

@ -1,9 +1,16 @@
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2022, */
/* Rot127 <unisono@quyllur.org> 2022-2023 */
/* Automatically generated file by the LLVM TableGen Disassembler Backend. */
/* Automatically generated file by Capstone's LLVM TableGen Disassembler Backend. */
/* LLVM-commit: <commit> */
/* LLVM-tag: <tag> */
/* Do not edit. */
/* Capstone's LLVM TableGen Backends: */
/* https://github.com/capstone-engine/llvm-capstone */
#include <capstone/platform.h>
#include <assert.h>
@ -471,6 +478,7 @@ MnemonicBitsInfo getMnemonic(MCInst *MI, SStream *O) {
2817U, // PATCHABLE_EVENT_CALL
2793U, // PATCHABLE_TYPED_EVENT_CALL
0U, // ICALL_BRANCH_FUNNEL
0U, // MEMBARRIER
0U, // G_ASSERT_SEXT
0U, // G_ASSERT_ZEXT
0U, // G_ASSERT_ALIGN
@ -532,6 +540,8 @@ MnemonicBitsInfo getMnemonic(MCInst *MI, SStream *O) {
0U, // G_ATOMICRMW_FSUB
0U, // G_ATOMICRMW_FMAX
0U, // G_ATOMICRMW_FMIN
0U, // G_ATOMICRMW_UINC_WRAP
0U, // G_ATOMICRMW_UDEC_WRAP
0U, // G_FENCE
0U, // G_BRCOND
0U, // G_BRINDIRECT
@ -1746,6 +1756,7 @@ MnemonicBitsInfo getMnemonic(MCInst *MI, SStream *O) {
0U, // PATCHABLE_EVENT_CALL
0U, // PATCHABLE_TYPED_EVENT_CALL
0U, // ICALL_BRANCH_FUNNEL
0U, // MEMBARRIER
0U, // G_ASSERT_SEXT
0U, // G_ASSERT_ZEXT
0U, // G_ASSERT_ALIGN
@ -1807,6 +1818,8 @@ MnemonicBitsInfo getMnemonic(MCInst *MI, SStream *O) {
0U, // G_ATOMICRMW_FSUB
0U, // G_ATOMICRMW_FMAX
0U, // G_ATOMICRMW_FMIN
0U, // G_ATOMICRMW_UINC_WRAP
0U, // G_ATOMICRMW_UDEC_WRAP
0U, // G_FENCE
0U, // G_BRCOND
0U, // G_BRINDIRECT

View File

@ -1,16 +1,22 @@
/* Capstone Disassembly Engine, https://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2019 */
/* By Rot127 <unisono@quyllur.org>, 2023 */
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2022, */
/* Rot127 <unisono@quyllur.org> 2022-2023 */
/* Automatically generated file by Capstone's LLVM TableGen Disassembler Backend. */
/* Auto generated file. Do not edit. */
/* Code generator: https://github.com/capstone-engine/capstone/tree/next/suite/auto-sync */
/* LLVM-commit: <commit> */
/* LLVM-tag: <tag> */
{ TriCore_FEATURE_HasV110, "HasV110" },
{ TriCore_FEATURE_HasV120_UP, "HasV120_UP" },
{ TriCore_FEATURE_HasV130_UP, "HasV130_UP" },
{ TriCore_FEATURE_HasV161, "HasV161" },
{ TriCore_FEATURE_HasV160_UP, "HasV160_UP" },
{ TriCore_FEATURE_HasV131_UP, "HasV131_UP" },
{ TriCore_FEATURE_HasV161_UP, "HasV161_UP" },
{ TriCore_FEATURE_HasV162, "HasV162" },
{ TriCore_FEATURE_HasV162_UP, "HasV162_UP" },
/* Do not edit. */
/* Capstone's LLVM TableGen Backends: */
/* https://github.com/capstone-engine/llvm-capstone */
{ TRICORE_FEATURE_HasV110, "HasV110" },
{ TRICORE_FEATURE_HasV120_UP, "HasV120_UP" },
{ TRICORE_FEATURE_HasV130_UP, "HasV130_UP" },
{ TRICORE_FEATURE_HasV161, "HasV161" },
{ TRICORE_FEATURE_HasV160_UP, "HasV160_UP" },
{ TRICORE_FEATURE_HasV131_UP, "HasV131_UP" },
{ TRICORE_FEATURE_HasV161_UP, "HasV161_UP" },
{ TRICORE_FEATURE_HasV162, "HasV162" },
{ TRICORE_FEATURE_HasV162_UP, "HasV162_UP" },

File diff suppressed because it is too large Load Diff

View File

@ -1,397 +1,403 @@
/* Capstone Disassembly Engine, https://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2019 */
/* By Rot127 <unisono@quyllur.org>, 2023 */
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2022, */
/* Rot127 <unisono@quyllur.org> 2022-2023 */
/* Automatically generated file by Capstone's LLVM TableGen Disassembler Backend. */
/* Auto generated file. Do not edit. */
/* Code generator: https://github.com/capstone-engine/capstone/tree/next/suite/auto-sync */
/* LLVM-commit: <commit> */
/* LLVM-tag: <tag> */
"xor.t", // TriCore_INS_XOR_T
"absdifs.b", // TriCore_INS_ABSDIFS_B
"absdifs.h", // TriCore_INS_ABSDIFS_H
"absdifs", // TriCore_INS_ABSDIFS
"absdif.b", // TriCore_INS_ABSDIF_B
"absdif.h", // TriCore_INS_ABSDIF_H
"absdif", // TriCore_INS_ABSDIF
"abss.b", // TriCore_INS_ABSS_B
"abss.h", // TriCore_INS_ABSS_H
"abss", // TriCore_INS_ABSS
"abs.b", // TriCore_INS_ABS_B
"abs.h", // TriCore_INS_ABS_H
"abs", // TriCore_INS_ABS
"addc", // TriCore_INS_ADDC
"addih.a", // TriCore_INS_ADDIH_A
"addih", // TriCore_INS_ADDIH
"addi", // TriCore_INS_ADDI
"addsc.at", // TriCore_INS_ADDSC_AT
"addsc.a", // TriCore_INS_ADDSC_A
"adds.bu", // TriCore_INS_ADDS_BU
"adds.b", // TriCore_INS_ADDS_B
"adds.h", // TriCore_INS_ADDS_H
"adds.hu", // TriCore_INS_ADDS_HU
"adds.u", // TriCore_INS_ADDS_U
"adds", // TriCore_INS_ADDS
"addx", // TriCore_INS_ADDX
"add.a", // TriCore_INS_ADD_A
"add.b", // TriCore_INS_ADD_B
"add.f", // TriCore_INS_ADD_F
"add.h", // TriCore_INS_ADD_H
"add", // TriCore_INS_ADD
"andn.t", // TriCore_INS_ANDN_T
"andn", // TriCore_INS_ANDN
"and.andn.t", // TriCore_INS_AND_ANDN_T
"and.and.t", // TriCore_INS_AND_AND_T
"and.eq", // TriCore_INS_AND_EQ
"and.ge.u", // TriCore_INS_AND_GE_U
"and.ge", // TriCore_INS_AND_GE
"and.lt.u", // TriCore_INS_AND_LT_U
"and.lt", // TriCore_INS_AND_LT
"and.ne", // TriCore_INS_AND_NE
"and.nor.t", // TriCore_INS_AND_NOR_T
"and.or.t", // TriCore_INS_AND_OR_T
"and.t", // TriCore_INS_AND_T
"and", // TriCore_INS_AND
"bisr", // TriCore_INS_BISR
"bmerge", // TriCore_INS_BMERGE
"bsplit", // TriCore_INS_BSPLIT
"cachea.i", // TriCore_INS_CACHEA_I
"cachea.wi", // TriCore_INS_CACHEA_WI
"cachea.w", // TriCore_INS_CACHEA_W
"cachei.i", // TriCore_INS_CACHEI_I
"cachei.wi", // TriCore_INS_CACHEI_WI
"cachei.w", // TriCore_INS_CACHEI_W
"caddn.a", // TriCore_INS_CADDN_A
"caddn", // TriCore_INS_CADDN
"cadd.a", // TriCore_INS_CADD_A
"cadd", // TriCore_INS_CADD
"calla", // TriCore_INS_CALLA
"calli", // TriCore_INS_CALLI
"call", // TriCore_INS_CALL
"clo.b", // TriCore_INS_CLO_B
"clo.h", // TriCore_INS_CLO_H
"clo", // TriCore_INS_CLO
"cls.b", // TriCore_INS_CLS_B
"cls.h", // TriCore_INS_CLS_H
"cls", // TriCore_INS_CLS
"clz.b", // TriCore_INS_CLZ_B
"clz.h", // TriCore_INS_CLZ_H
"clz", // TriCore_INS_CLZ
"cmovn", // TriCore_INS_CMOVN
"cmov", // TriCore_INS_CMOV
"cmpswap.w", // TriCore_INS_CMPSWAP_W
"cmp.f", // TriCore_INS_CMP_F
"crc32b.w", // TriCore_INS_CRC32B_W
"crc32l.w", // TriCore_INS_CRC32L_W
"crc32.b", // TriCore_INS_CRC32_B
"crcn", // TriCore_INS_CRCN
"csubn.a", // TriCore_INS_CSUBN_A
"csubn", // TriCore_INS_CSUBN
"csub.a", // TriCore_INS_CSUB_A
"csub", // TriCore_INS_CSUB
"debug", // TriCore_INS_DEBUG
"dextr", // TriCore_INS_DEXTR
"difsc.a", // TriCore_INS_DIFSC_A
"disable", // TriCore_INS_DISABLE
"div.f", // TriCore_INS_DIV_F
"div.u", // TriCore_INS_DIV_U
"div", // TriCore_INS_DIV
"dsync", // TriCore_INS_DSYNC
"dvadj", // TriCore_INS_DVADJ
"dvinit.bu", // TriCore_INS_DVINIT_BU
"dvinit.b", // TriCore_INS_DVINIT_B
"dvinit.hu", // TriCore_INS_DVINIT_HU
"dvinit.h", // TriCore_INS_DVINIT_H
"dvinit.u", // TriCore_INS_DVINIT_U
"dvinit", // TriCore_INS_DVINIT
"dvstep.u", // TriCore_INS_DVSTEP_U
"dvstep", // TriCore_INS_DVSTEP
"enable", // TriCore_INS_ENABLE
"eqany.b", // TriCore_INS_EQANY_B
"eqany.h", // TriCore_INS_EQANY_H
"eqz.a", // TriCore_INS_EQZ_A
"eq.a", // TriCore_INS_EQ_A
"eq.b", // TriCore_INS_EQ_B
"eq.h", // TriCore_INS_EQ_H
"eq.w", // TriCore_INS_EQ_W
"eq", // TriCore_INS_EQ
"extr.u", // TriCore_INS_EXTR_U
"extr", // TriCore_INS_EXTR
"fcalla", // TriCore_INS_FCALLA
"fcalli", // TriCore_INS_FCALLI
"fcall", // TriCore_INS_FCALL
"fret", // TriCore_INS_FRET
"ftohp", // TriCore_INS_FTOHP
"ftoiz", // TriCore_INS_FTOIZ
"ftoi", // TriCore_INS_FTOI
"ftoq31z", // TriCore_INS_FTOQ31Z
"ftoq31", // TriCore_INS_FTOQ31
"ftouz", // TriCore_INS_FTOUZ
"ftou", // TriCore_INS_FTOU
"ge.a", // TriCore_INS_GE_A
"ge.u", // TriCore_INS_GE_U
"ge", // TriCore_INS_GE
"hptof", // TriCore_INS_HPTOF
"imask", // TriCore_INS_IMASK
"insert", // TriCore_INS_INSERT
"insn.t", // TriCore_INS_INSN_T
"ins.t", // TriCore_INS_INS_T
"isync", // TriCore_INS_ISYNC
"itof", // TriCore_INS_ITOF
"ixmax.u", // TriCore_INS_IXMAX_U
"ixmax", // TriCore_INS_IXMAX
"ixmin.u", // TriCore_INS_IXMIN_U
"ixmin", // TriCore_INS_IXMIN
"ja", // TriCore_INS_JA
"jeq.a", // TriCore_INS_JEQ_A
"jeq", // TriCore_INS_JEQ
"jgez", // TriCore_INS_JGEZ
"jge.u", // TriCore_INS_JGE_U
"jge", // TriCore_INS_JGE
"jgtz", // TriCore_INS_JGTZ
"ji", // TriCore_INS_JI
"jla", // TriCore_INS_JLA
"jlez", // TriCore_INS_JLEZ
"jli", // TriCore_INS_JLI
"jltz", // TriCore_INS_JLTZ
"jlt.u", // TriCore_INS_JLT_U
"jlt", // TriCore_INS_JLT
"jl", // TriCore_INS_JL
"jned", // TriCore_INS_JNED
"jnei", // TriCore_INS_JNEI
"jne.a", // TriCore_INS_JNE_A
"jne", // TriCore_INS_JNE
"jnz.a", // TriCore_INS_JNZ_A
"jnz.t", // TriCore_INS_JNZ_T
"jnz", // TriCore_INS_JNZ
"jz.a", // TriCore_INS_JZ_A
"jz.t", // TriCore_INS_JZ_T
"jz", // TriCore_INS_JZ
"j", // TriCore_INS_J
"ldlcx", // TriCore_INS_LDLCX
"ldmst", // TriCore_INS_LDMST
"lducx", // TriCore_INS_LDUCX
"ld.a", // TriCore_INS_LD_A
"ld.bu", // TriCore_INS_LD_BU
"ld.b", // TriCore_INS_LD_B
"ld.da", // TriCore_INS_LD_DA
"ld.d", // TriCore_INS_LD_D
"ld.hu", // TriCore_INS_LD_HU
"ld.h", // TriCore_INS_LD_H
"ld.q", // TriCore_INS_LD_Q
"ld.w", // TriCore_INS_LD_W
"lea", // TriCore_INS_LEA
"lha", // TriCore_INS_LHA
"loopu", // TriCore_INS_LOOPU
"loop", // TriCore_INS_LOOP
"lt.a", // TriCore_INS_LT_A
"lt.b", // TriCore_INS_LT_B
"lt.bu", // TriCore_INS_LT_BU
"lt.h", // TriCore_INS_LT_H
"lt.hu", // TriCore_INS_LT_HU
"lt.u", // TriCore_INS_LT_U
"lt.w", // TriCore_INS_LT_W
"lt.wu", // TriCore_INS_LT_WU
"lt", // TriCore_INS_LT
"maddms.h", // TriCore_INS_MADDMS_H
"maddms.u", // TriCore_INS_MADDMS_U
"maddms", // TriCore_INS_MADDMS
"maddm.h", // TriCore_INS_MADDM_H
"maddm.q", // TriCore_INS_MADDM_Q
"maddm.u", // TriCore_INS_MADDM_U
"maddm", // TriCore_INS_MADDM
"maddrs.h", // TriCore_INS_MADDRS_H
"maddrs.q", // TriCore_INS_MADDRS_Q
"maddr.h", // TriCore_INS_MADDR_H
"maddr.q", // TriCore_INS_MADDR_Q
"maddsums.h", // TriCore_INS_MADDSUMS_H
"maddsum.h", // TriCore_INS_MADDSUM_H
"maddsurs.h", // TriCore_INS_MADDSURS_H
"maddsur.h", // TriCore_INS_MADDSUR_H
"maddsus.h", // TriCore_INS_MADDSUS_H
"maddsu.h", // TriCore_INS_MADDSU_H
"madds.h", // TriCore_INS_MADDS_H
"madds.q", // TriCore_INS_MADDS_Q
"madds.u", // TriCore_INS_MADDS_U
"madds", // TriCore_INS_MADDS
"madd.f", // TriCore_INS_MADD_F
"madd.h", // TriCore_INS_MADD_H
"madd.q", // TriCore_INS_MADD_Q
"madd.u", // TriCore_INS_MADD_U
"madd", // TriCore_INS_MADD
"max.b", // TriCore_INS_MAX_B
"max.bu", // TriCore_INS_MAX_BU
"max.h", // TriCore_INS_MAX_H
"max.hu", // TriCore_INS_MAX_HU
"max.u", // TriCore_INS_MAX_U
"max", // TriCore_INS_MAX
"mfcr", // TriCore_INS_MFCR
"min.b", // TriCore_INS_MIN_B
"min.bu", // TriCore_INS_MIN_BU
"min.h", // TriCore_INS_MIN_H
"min.hu", // TriCore_INS_MIN_HU
"min.u", // TriCore_INS_MIN_U
"min", // TriCore_INS_MIN
"movh.a", // TriCore_INS_MOVH_A
"movh", // TriCore_INS_MOVH
"movz.a", // TriCore_INS_MOVZ_A
"mov.aa", // TriCore_INS_MOV_AA
"mov.a", // TriCore_INS_MOV_A
"mov.d", // TriCore_INS_MOV_D
"mov.u", // TriCore_INS_MOV_U
"mov", // TriCore_INS_MOV
"msubadms.h", // TriCore_INS_MSUBADMS_H
"msubadm.h", // TriCore_INS_MSUBADM_H
"msubadrs.h", // TriCore_INS_MSUBADRS_H
"msubadr.h", // TriCore_INS_MSUBADR_H
"msubads.h", // TriCore_INS_MSUBADS_H
"msubad.h", // TriCore_INS_MSUBAD_H
"msubms.h", // TriCore_INS_MSUBMS_H
"msubms.u", // TriCore_INS_MSUBMS_U
"msubms", // TriCore_INS_MSUBMS
"msubm.h", // TriCore_INS_MSUBM_H
"msubm.q", // TriCore_INS_MSUBM_Q
"msubm.u", // TriCore_INS_MSUBM_U
"msubm", // TriCore_INS_MSUBM
"msubrs.h", // TriCore_INS_MSUBRS_H
"msubrs.q", // TriCore_INS_MSUBRS_Q
"msubr.h", // TriCore_INS_MSUBR_H
"msubr.q", // TriCore_INS_MSUBR_Q
"msubs.h", // TriCore_INS_MSUBS_H
"msubs.q", // TriCore_INS_MSUBS_Q
"msubs.u", // TriCore_INS_MSUBS_U
"msubs", // TriCore_INS_MSUBS
"msub.f", // TriCore_INS_MSUB_F
"msub.h", // TriCore_INS_MSUB_H
"msub.q", // TriCore_INS_MSUB_Q
"msub.u", // TriCore_INS_MSUB_U
"msub", // TriCore_INS_MSUB
"mtcr", // TriCore_INS_MTCR
"mulms.h", // TriCore_INS_MULMS_H
"mulm.h", // TriCore_INS_MULM_H
"mulm.u", // TriCore_INS_MULM_U
"mulm", // TriCore_INS_MULM
"mulr.h", // TriCore_INS_MULR_H
"mulr.q", // TriCore_INS_MULR_Q
"muls.u", // TriCore_INS_MULS_U
"muls", // TriCore_INS_MULS
"mul.f", // TriCore_INS_MUL_F
"mul.h", // TriCore_INS_MUL_H
"mul.q", // TriCore_INS_MUL_Q
"mul.u", // TriCore_INS_MUL_U
"mul", // TriCore_INS_MUL
"nand.t", // TriCore_INS_NAND_T
"nand", // TriCore_INS_NAND
"nez.a", // TriCore_INS_NEZ_A
"ne.a", // TriCore_INS_NE_A
"ne", // TriCore_INS_NE
"nop", // TriCore_INS_NOP
"nor.t", // TriCore_INS_NOR_T
"nor", // TriCore_INS_NOR
"not", // TriCore_INS_NOT
"orn.t", // TriCore_INS_ORN_T
"orn", // TriCore_INS_ORN
"or.andn.t", // TriCore_INS_OR_ANDN_T
"or.and.t", // TriCore_INS_OR_AND_T
"or.eq", // TriCore_INS_OR_EQ
"or.ge.u", // TriCore_INS_OR_GE_U
"or.ge", // TriCore_INS_OR_GE
"or.lt.u", // TriCore_INS_OR_LT_U
"or.lt", // TriCore_INS_OR_LT
"or.ne", // TriCore_INS_OR_NE
"or.nor.t", // TriCore_INS_OR_NOR_T
"or.or.t", // TriCore_INS_OR_OR_T
"or.t", // TriCore_INS_OR_T
"or", // TriCore_INS_OR
"pack", // TriCore_INS_PACK
"parity", // TriCore_INS_PARITY
"popcnt.w", // TriCore_INS_POPCNT_W
"q31tof", // TriCore_INS_Q31TOF
"qseed.f", // TriCore_INS_QSEED_F
"restore", // TriCore_INS_RESTORE
"ret", // TriCore_INS_RET
"rfe", // TriCore_INS_RFE
"rfm", // TriCore_INS_RFM
"rslcx", // TriCore_INS_RSLCX
"rstv", // TriCore_INS_RSTV
"rsubs.u", // TriCore_INS_RSUBS_U
"rsubs", // TriCore_INS_RSUBS
"rsub", // TriCore_INS_RSUB
"sat.bu", // TriCore_INS_SAT_BU
"sat.b", // TriCore_INS_SAT_B
"sat.hu", // TriCore_INS_SAT_HU
"sat.h", // TriCore_INS_SAT_H
"seln.a", // TriCore_INS_SELN_A
"seln", // TriCore_INS_SELN
"sel.a", // TriCore_INS_SEL_A
"sel", // TriCore_INS_SEL
"shas", // TriCore_INS_SHAS
"sha.b", // TriCore_INS_SHA_B
"sha.h", // TriCore_INS_SHA_H
"sha", // TriCore_INS_SHA
"shuffle", // TriCore_INS_SHUFFLE
"sh.andn.t", // TriCore_INS_SH_ANDN_T
"sh.and.t", // TriCore_INS_SH_AND_T
"sh.b", // TriCore_INS_SH_B
"sh.eq", // TriCore_INS_SH_EQ
"sh.ge.u", // TriCore_INS_SH_GE_U
"sh.ge", // TriCore_INS_SH_GE
"sh.h", // TriCore_INS_SH_H
"sh.lt.u", // TriCore_INS_SH_LT_U
"sh.lt", // TriCore_INS_SH_LT
"sh.nand.t", // TriCore_INS_SH_NAND_T
"sh.ne", // TriCore_INS_SH_NE
"sh.nor.t", // TriCore_INS_SH_NOR_T
"sh.orn.t", // TriCore_INS_SH_ORN_T
"sh.or.t", // TriCore_INS_SH_OR_T
"sh.xnor.t", // TriCore_INS_SH_XNOR_T
"sh.xor.t", // TriCore_INS_SH_XOR_T
"sh", // TriCore_INS_SH
"stlcx", // TriCore_INS_STLCX
"stucx", // TriCore_INS_STUCX
"st.a", // TriCore_INS_ST_A
"st.b", // TriCore_INS_ST_B
"st.da", // TriCore_INS_ST_DA
"st.d", // TriCore_INS_ST_D
"st.h", // TriCore_INS_ST_H
"st.q", // TriCore_INS_ST_Q
"st.t", // TriCore_INS_ST_T
"st.w", // TriCore_INS_ST_W
"subc", // TriCore_INS_SUBC
"subsc.a", // TriCore_INS_SUBSC_A
"subs.bu", // TriCore_INS_SUBS_BU
"subs.b", // TriCore_INS_SUBS_B
"subs.hu", // TriCore_INS_SUBS_HU
"subs.h", // TriCore_INS_SUBS_H
"subs.u", // TriCore_INS_SUBS_U
"subs", // TriCore_INS_SUBS
"subx", // TriCore_INS_SUBX
"sub.a", // TriCore_INS_SUB_A
"sub.b", // TriCore_INS_SUB_B
"sub.f", // TriCore_INS_SUB_F
"sub.h", // TriCore_INS_SUB_H
"sub", // TriCore_INS_SUB
"svlcx", // TriCore_INS_SVLCX
"swapmsk.w", // TriCore_INS_SWAPMSK_W
"swap.a", // TriCore_INS_SWAP_A
"swap.w", // TriCore_INS_SWAP_W
"syscall", // TriCore_INS_SYSCALL
"tlbdemap", // TriCore_INS_TLBDEMAP
"tlbflush.a", // TriCore_INS_TLBFLUSH_A
"tlbflush.b", // TriCore_INS_TLBFLUSH_B
"tlbmap", // TriCore_INS_TLBMAP
"tlbprobe.a", // TriCore_INS_TLBPROBE_A
"tlbprobe.i", // TriCore_INS_TLBPROBE_I
"trapsv", // TriCore_INS_TRAPSV
"trapv", // TriCore_INS_TRAPV
"unpack", // TriCore_INS_UNPACK
"updfl", // TriCore_INS_UPDFL
"utof", // TriCore_INS_UTOF
"wait", // TriCore_INS_WAIT
"xnor.t", // TriCore_INS_XNOR_T
"xnor", // TriCore_INS_XNOR
"xor.eq", // TriCore_INS_XOR_EQ
"xor.ge.u", // TriCore_INS_XOR_GE_U
"xor.ge", // TriCore_INS_XOR_GE
"xor.lt.u", // TriCore_INS_XOR_LT_U
"xor.lt", // TriCore_INS_XOR_LT
"xor.ne", // TriCore_INS_XOR_NE
"xor", // TriCore_INS_XOR
/* Do not edit. */
/* Capstone's LLVM TableGen Backends: */
/* https://github.com/capstone-engine/llvm-capstone */
"xor.t", // TRICORE_INS_XOR_T
"absdifs.b", // TRICORE_INS_ABSDIFS_B
"absdifs.h", // TRICORE_INS_ABSDIFS_H
"absdifs", // TRICORE_INS_ABSDIFS
"absdif.b", // TRICORE_INS_ABSDIF_B
"absdif.h", // TRICORE_INS_ABSDIF_H
"absdif", // TRICORE_INS_ABSDIF
"abss.b", // TRICORE_INS_ABSS_B
"abss.h", // TRICORE_INS_ABSS_H
"abss", // TRICORE_INS_ABSS
"abs.b", // TRICORE_INS_ABS_B
"abs.h", // TRICORE_INS_ABS_H
"abs", // TRICORE_INS_ABS
"addc", // TRICORE_INS_ADDC
"addih.a", // TRICORE_INS_ADDIH_A
"addih", // TRICORE_INS_ADDIH
"addi", // TRICORE_INS_ADDI
"addsc.at", // TRICORE_INS_ADDSC_AT
"addsc.a", // TRICORE_INS_ADDSC_A
"adds.bu", // TRICORE_INS_ADDS_BU
"adds.b", // TRICORE_INS_ADDS_B
"adds.h", // TRICORE_INS_ADDS_H
"adds.hu", // TRICORE_INS_ADDS_HU
"adds.u", // TRICORE_INS_ADDS_U
"adds", // TRICORE_INS_ADDS
"addx", // TRICORE_INS_ADDX
"add.a", // TRICORE_INS_ADD_A
"add.b", // TRICORE_INS_ADD_B
"add.f", // TRICORE_INS_ADD_F
"add.h", // TRICORE_INS_ADD_H
"add", // TRICORE_INS_ADD
"andn.t", // TRICORE_INS_ANDN_T
"andn", // TRICORE_INS_ANDN
"and.andn.t", // TRICORE_INS_AND_ANDN_T
"and.and.t", // TRICORE_INS_AND_AND_T
"and.eq", // TRICORE_INS_AND_EQ
"and.ge.u", // TRICORE_INS_AND_GE_U
"and.ge", // TRICORE_INS_AND_GE
"and.lt.u", // TRICORE_INS_AND_LT_U
"and.lt", // TRICORE_INS_AND_LT
"and.ne", // TRICORE_INS_AND_NE
"and.nor.t", // TRICORE_INS_AND_NOR_T
"and.or.t", // TRICORE_INS_AND_OR_T
"and.t", // TRICORE_INS_AND_T
"and", // TRICORE_INS_AND
"bisr", // TRICORE_INS_BISR
"bmerge", // TRICORE_INS_BMERGE
"bsplit", // TRICORE_INS_BSPLIT
"cachea.i", // TRICORE_INS_CACHEA_I
"cachea.wi", // TRICORE_INS_CACHEA_WI
"cachea.w", // TRICORE_INS_CACHEA_W
"cachei.i", // TRICORE_INS_CACHEI_I
"cachei.wi", // TRICORE_INS_CACHEI_WI
"cachei.w", // TRICORE_INS_CACHEI_W
"caddn.a", // TRICORE_INS_CADDN_A
"caddn", // TRICORE_INS_CADDN
"cadd.a", // TRICORE_INS_CADD_A
"cadd", // TRICORE_INS_CADD
"calla", // TRICORE_INS_CALLA
"calli", // TRICORE_INS_CALLI
"call", // TRICORE_INS_CALL
"clo.b", // TRICORE_INS_CLO_B
"clo.h", // TRICORE_INS_CLO_H
"clo", // TRICORE_INS_CLO
"cls.b", // TRICORE_INS_CLS_B
"cls.h", // TRICORE_INS_CLS_H
"cls", // TRICORE_INS_CLS
"clz.b", // TRICORE_INS_CLZ_B
"clz.h", // TRICORE_INS_CLZ_H
"clz", // TRICORE_INS_CLZ
"cmovn", // TRICORE_INS_CMOVN
"cmov", // TRICORE_INS_CMOV
"cmpswap.w", // TRICORE_INS_CMPSWAP_W
"cmp.f", // TRICORE_INS_CMP_F
"crc32b.w", // TRICORE_INS_CRC32B_W
"crc32l.w", // TRICORE_INS_CRC32L_W
"crc32.b", // TRICORE_INS_CRC32_B
"crcn", // TRICORE_INS_CRCN
"csubn.a", // TRICORE_INS_CSUBN_A
"csubn", // TRICORE_INS_CSUBN
"csub.a", // TRICORE_INS_CSUB_A
"csub", // TRICORE_INS_CSUB
"debug", // TRICORE_INS_DEBUG
"dextr", // TRICORE_INS_DEXTR
"difsc.a", // TRICORE_INS_DIFSC_A
"disable", // TRICORE_INS_DISABLE
"div.f", // TRICORE_INS_DIV_F
"div.u", // TRICORE_INS_DIV_U
"div", // TRICORE_INS_DIV
"dsync", // TRICORE_INS_DSYNC
"dvadj", // TRICORE_INS_DVADJ
"dvinit.bu", // TRICORE_INS_DVINIT_BU
"dvinit.b", // TRICORE_INS_DVINIT_B
"dvinit.hu", // TRICORE_INS_DVINIT_HU
"dvinit.h", // TRICORE_INS_DVINIT_H
"dvinit.u", // TRICORE_INS_DVINIT_U
"dvinit", // TRICORE_INS_DVINIT
"dvstep.u", // TRICORE_INS_DVSTEP_U
"dvstep", // TRICORE_INS_DVSTEP
"enable", // TRICORE_INS_ENABLE
"eqany.b", // TRICORE_INS_EQANY_B
"eqany.h", // TRICORE_INS_EQANY_H
"eqz.a", // TRICORE_INS_EQZ_A
"eq.a", // TRICORE_INS_EQ_A
"eq.b", // TRICORE_INS_EQ_B
"eq.h", // TRICORE_INS_EQ_H
"eq.w", // TRICORE_INS_EQ_W
"eq", // TRICORE_INS_EQ
"extr.u", // TRICORE_INS_EXTR_U
"extr", // TRICORE_INS_EXTR
"fcalla", // TRICORE_INS_FCALLA
"fcalli", // TRICORE_INS_FCALLI
"fcall", // TRICORE_INS_FCALL
"fret", // TRICORE_INS_FRET
"ftohp", // TRICORE_INS_FTOHP
"ftoiz", // TRICORE_INS_FTOIZ
"ftoi", // TRICORE_INS_FTOI
"ftoq31z", // TRICORE_INS_FTOQ31Z
"ftoq31", // TRICORE_INS_FTOQ31
"ftouz", // TRICORE_INS_FTOUZ
"ftou", // TRICORE_INS_FTOU
"ge.a", // TRICORE_INS_GE_A
"ge.u", // TRICORE_INS_GE_U
"ge", // TRICORE_INS_GE
"hptof", // TRICORE_INS_HPTOF
"imask", // TRICORE_INS_IMASK
"insert", // TRICORE_INS_INSERT
"insn.t", // TRICORE_INS_INSN_T
"ins.t", // TRICORE_INS_INS_T
"isync", // TRICORE_INS_ISYNC
"itof", // TRICORE_INS_ITOF
"ixmax.u", // TRICORE_INS_IXMAX_U
"ixmax", // TRICORE_INS_IXMAX
"ixmin.u", // TRICORE_INS_IXMIN_U
"ixmin", // TRICORE_INS_IXMIN
"ja", // TRICORE_INS_JA
"jeq.a", // TRICORE_INS_JEQ_A
"jeq", // TRICORE_INS_JEQ
"jgez", // TRICORE_INS_JGEZ
"jge.u", // TRICORE_INS_JGE_U
"jge", // TRICORE_INS_JGE
"jgtz", // TRICORE_INS_JGTZ
"ji", // TRICORE_INS_JI
"jla", // TRICORE_INS_JLA
"jlez", // TRICORE_INS_JLEZ
"jli", // TRICORE_INS_JLI
"jltz", // TRICORE_INS_JLTZ
"jlt.u", // TRICORE_INS_JLT_U
"jlt", // TRICORE_INS_JLT
"jl", // TRICORE_INS_JL
"jned", // TRICORE_INS_JNED
"jnei", // TRICORE_INS_JNEI
"jne.a", // TRICORE_INS_JNE_A
"jne", // TRICORE_INS_JNE
"jnz.a", // TRICORE_INS_JNZ_A
"jnz.t", // TRICORE_INS_JNZ_T
"jnz", // TRICORE_INS_JNZ
"jz.a", // TRICORE_INS_JZ_A
"jz.t", // TRICORE_INS_JZ_T
"jz", // TRICORE_INS_JZ
"j", // TRICORE_INS_J
"ldlcx", // TRICORE_INS_LDLCX
"ldmst", // TRICORE_INS_LDMST
"lducx", // TRICORE_INS_LDUCX
"ld.a", // TRICORE_INS_LD_A
"ld.bu", // TRICORE_INS_LD_BU
"ld.b", // TRICORE_INS_LD_B
"ld.da", // TRICORE_INS_LD_DA
"ld.d", // TRICORE_INS_LD_D
"ld.hu", // TRICORE_INS_LD_HU
"ld.h", // TRICORE_INS_LD_H
"ld.q", // TRICORE_INS_LD_Q
"ld.w", // TRICORE_INS_LD_W
"lea", // TRICORE_INS_LEA
"lha", // TRICORE_INS_LHA
"loopu", // TRICORE_INS_LOOPU
"loop", // TRICORE_INS_LOOP
"lt.a", // TRICORE_INS_LT_A
"lt.b", // TRICORE_INS_LT_B
"lt.bu", // TRICORE_INS_LT_BU
"lt.h", // TRICORE_INS_LT_H
"lt.hu", // TRICORE_INS_LT_HU
"lt.u", // TRICORE_INS_LT_U
"lt.w", // TRICORE_INS_LT_W
"lt.wu", // TRICORE_INS_LT_WU
"lt", // TRICORE_INS_LT
"maddms.h", // TRICORE_INS_MADDMS_H
"maddms.u", // TRICORE_INS_MADDMS_U
"maddms", // TRICORE_INS_MADDMS
"maddm.h", // TRICORE_INS_MADDM_H
"maddm.q", // TRICORE_INS_MADDM_Q
"maddm.u", // TRICORE_INS_MADDM_U
"maddm", // TRICORE_INS_MADDM
"maddrs.h", // TRICORE_INS_MADDRS_H
"maddrs.q", // TRICORE_INS_MADDRS_Q
"maddr.h", // TRICORE_INS_MADDR_H
"maddr.q", // TRICORE_INS_MADDR_Q
"maddsums.h", // TRICORE_INS_MADDSUMS_H
"maddsum.h", // TRICORE_INS_MADDSUM_H
"maddsurs.h", // TRICORE_INS_MADDSURS_H
"maddsur.h", // TRICORE_INS_MADDSUR_H
"maddsus.h", // TRICORE_INS_MADDSUS_H
"maddsu.h", // TRICORE_INS_MADDSU_H
"madds.h", // TRICORE_INS_MADDS_H
"madds.q", // TRICORE_INS_MADDS_Q
"madds.u", // TRICORE_INS_MADDS_U
"madds", // TRICORE_INS_MADDS
"madd.f", // TRICORE_INS_MADD_F
"madd.h", // TRICORE_INS_MADD_H
"madd.q", // TRICORE_INS_MADD_Q
"madd.u", // TRICORE_INS_MADD_U
"madd", // TRICORE_INS_MADD
"max.b", // TRICORE_INS_MAX_B
"max.bu", // TRICORE_INS_MAX_BU
"max.h", // TRICORE_INS_MAX_H
"max.hu", // TRICORE_INS_MAX_HU
"max.u", // TRICORE_INS_MAX_U
"max", // TRICORE_INS_MAX
"mfcr", // TRICORE_INS_MFCR
"min.b", // TRICORE_INS_MIN_B
"min.bu", // TRICORE_INS_MIN_BU
"min.h", // TRICORE_INS_MIN_H
"min.hu", // TRICORE_INS_MIN_HU
"min.u", // TRICORE_INS_MIN_U
"min", // TRICORE_INS_MIN
"movh.a", // TRICORE_INS_MOVH_A
"movh", // TRICORE_INS_MOVH
"movz.a", // TRICORE_INS_MOVZ_A
"mov.aa", // TRICORE_INS_MOV_AA
"mov.a", // TRICORE_INS_MOV_A
"mov.d", // TRICORE_INS_MOV_D
"mov.u", // TRICORE_INS_MOV_U
"mov", // TRICORE_INS_MOV
"msubadms.h", // TRICORE_INS_MSUBADMS_H
"msubadm.h", // TRICORE_INS_MSUBADM_H
"msubadrs.h", // TRICORE_INS_MSUBADRS_H
"msubadr.h", // TRICORE_INS_MSUBADR_H
"msubads.h", // TRICORE_INS_MSUBADS_H
"msubad.h", // TRICORE_INS_MSUBAD_H
"msubms.h", // TRICORE_INS_MSUBMS_H
"msubms.u", // TRICORE_INS_MSUBMS_U
"msubms", // TRICORE_INS_MSUBMS
"msubm.h", // TRICORE_INS_MSUBM_H
"msubm.q", // TRICORE_INS_MSUBM_Q
"msubm.u", // TRICORE_INS_MSUBM_U
"msubm", // TRICORE_INS_MSUBM
"msubrs.h", // TRICORE_INS_MSUBRS_H
"msubrs.q", // TRICORE_INS_MSUBRS_Q
"msubr.h", // TRICORE_INS_MSUBR_H
"msubr.q", // TRICORE_INS_MSUBR_Q
"msubs.h", // TRICORE_INS_MSUBS_H
"msubs.q", // TRICORE_INS_MSUBS_Q
"msubs.u", // TRICORE_INS_MSUBS_U
"msubs", // TRICORE_INS_MSUBS
"msub.f", // TRICORE_INS_MSUB_F
"msub.h", // TRICORE_INS_MSUB_H
"msub.q", // TRICORE_INS_MSUB_Q
"msub.u", // TRICORE_INS_MSUB_U
"msub", // TRICORE_INS_MSUB
"mtcr", // TRICORE_INS_MTCR
"mulms.h", // TRICORE_INS_MULMS_H
"mulm.h", // TRICORE_INS_MULM_H
"mulm.u", // TRICORE_INS_MULM_U
"mulm", // TRICORE_INS_MULM
"mulr.h", // TRICORE_INS_MULR_H
"mulr.q", // TRICORE_INS_MULR_Q
"muls.u", // TRICORE_INS_MULS_U
"muls", // TRICORE_INS_MULS
"mul.f", // TRICORE_INS_MUL_F
"mul.h", // TRICORE_INS_MUL_H
"mul.q", // TRICORE_INS_MUL_Q
"mul.u", // TRICORE_INS_MUL_U
"mul", // TRICORE_INS_MUL
"nand.t", // TRICORE_INS_NAND_T
"nand", // TRICORE_INS_NAND
"nez.a", // TRICORE_INS_NEZ_A
"ne.a", // TRICORE_INS_NE_A
"ne", // TRICORE_INS_NE
"nop", // TRICORE_INS_NOP
"nor.t", // TRICORE_INS_NOR_T
"nor", // TRICORE_INS_NOR
"not", // TRICORE_INS_NOT
"orn.t", // TRICORE_INS_ORN_T
"orn", // TRICORE_INS_ORN
"or.andn.t", // TRICORE_INS_OR_ANDN_T
"or.and.t", // TRICORE_INS_OR_AND_T
"or.eq", // TRICORE_INS_OR_EQ
"or.ge.u", // TRICORE_INS_OR_GE_U
"or.ge", // TRICORE_INS_OR_GE
"or.lt.u", // TRICORE_INS_OR_LT_U
"or.lt", // TRICORE_INS_OR_LT
"or.ne", // TRICORE_INS_OR_NE
"or.nor.t", // TRICORE_INS_OR_NOR_T
"or.or.t", // TRICORE_INS_OR_OR_T
"or.t", // TRICORE_INS_OR_T
"or", // TRICORE_INS_OR
"pack", // TRICORE_INS_PACK
"parity", // TRICORE_INS_PARITY
"popcnt.w", // TRICORE_INS_POPCNT_W
"q31tof", // TRICORE_INS_Q31TOF
"qseed.f", // TRICORE_INS_QSEED_F
"restore", // TRICORE_INS_RESTORE
"ret", // TRICORE_INS_RET
"rfe", // TRICORE_INS_RFE
"rfm", // TRICORE_INS_RFM
"rslcx", // TRICORE_INS_RSLCX
"rstv", // TRICORE_INS_RSTV
"rsubs.u", // TRICORE_INS_RSUBS_U
"rsubs", // TRICORE_INS_RSUBS
"rsub", // TRICORE_INS_RSUB
"sat.bu", // TRICORE_INS_SAT_BU
"sat.b", // TRICORE_INS_SAT_B
"sat.hu", // TRICORE_INS_SAT_HU
"sat.h", // TRICORE_INS_SAT_H
"seln.a", // TRICORE_INS_SELN_A
"seln", // TRICORE_INS_SELN
"sel.a", // TRICORE_INS_SEL_A
"sel", // TRICORE_INS_SEL
"shas", // TRICORE_INS_SHAS
"sha.b", // TRICORE_INS_SHA_B
"sha.h", // TRICORE_INS_SHA_H
"sha", // TRICORE_INS_SHA
"shuffle", // TRICORE_INS_SHUFFLE
"sh.andn.t", // TRICORE_INS_SH_ANDN_T
"sh.and.t", // TRICORE_INS_SH_AND_T
"sh.b", // TRICORE_INS_SH_B
"sh.eq", // TRICORE_INS_SH_EQ
"sh.ge.u", // TRICORE_INS_SH_GE_U
"sh.ge", // TRICORE_INS_SH_GE
"sh.h", // TRICORE_INS_SH_H
"sh.lt.u", // TRICORE_INS_SH_LT_U
"sh.lt", // TRICORE_INS_SH_LT
"sh.nand.t", // TRICORE_INS_SH_NAND_T
"sh.ne", // TRICORE_INS_SH_NE
"sh.nor.t", // TRICORE_INS_SH_NOR_T
"sh.orn.t", // TRICORE_INS_SH_ORN_T
"sh.or.t", // TRICORE_INS_SH_OR_T
"sh.xnor.t", // TRICORE_INS_SH_XNOR_T
"sh.xor.t", // TRICORE_INS_SH_XOR_T
"sh", // TRICORE_INS_SH
"stlcx", // TRICORE_INS_STLCX
"stucx", // TRICORE_INS_STUCX
"st.a", // TRICORE_INS_ST_A
"st.b", // TRICORE_INS_ST_B
"st.da", // TRICORE_INS_ST_DA
"st.d", // TRICORE_INS_ST_D
"st.h", // TRICORE_INS_ST_H
"st.q", // TRICORE_INS_ST_Q
"st.t", // TRICORE_INS_ST_T
"st.w", // TRICORE_INS_ST_W
"subc", // TRICORE_INS_SUBC
"subsc.a", // TRICORE_INS_SUBSC_A
"subs.bu", // TRICORE_INS_SUBS_BU
"subs.b", // TRICORE_INS_SUBS_B
"subs.hu", // TRICORE_INS_SUBS_HU
"subs.h", // TRICORE_INS_SUBS_H
"subs.u", // TRICORE_INS_SUBS_U
"subs", // TRICORE_INS_SUBS
"subx", // TRICORE_INS_SUBX
"sub.a", // TRICORE_INS_SUB_A
"sub.b", // TRICORE_INS_SUB_B
"sub.f", // TRICORE_INS_SUB_F
"sub.h", // TRICORE_INS_SUB_H
"sub", // TRICORE_INS_SUB
"svlcx", // TRICORE_INS_SVLCX
"swapmsk.w", // TRICORE_INS_SWAPMSK_W
"swap.a", // TRICORE_INS_SWAP_A
"swap.w", // TRICORE_INS_SWAP_W
"syscall", // TRICORE_INS_SYSCALL
"tlbdemap", // TRICORE_INS_TLBDEMAP
"tlbflush.a", // TRICORE_INS_TLBFLUSH_A
"tlbflush.b", // TRICORE_INS_TLBFLUSH_B
"tlbmap", // TRICORE_INS_TLBMAP
"tlbprobe.a", // TRICORE_INS_TLBPROBE_A
"tlbprobe.i", // TRICORE_INS_TLBPROBE_I
"trapsv", // TRICORE_INS_TRAPSV
"trapv", // TRICORE_INS_TRAPV
"unpack", // TRICORE_INS_UNPACK
"updfl", // TRICORE_INS_UPDFL
"utof", // TRICORE_INS_UTOF
"wait", // TRICORE_INS_WAIT
"xnor.t", // TRICORE_INS_XNOR_T
"xnor", // TRICORE_INS_XNOR
"xor.eq", // TRICORE_INS_XOR_EQ
"xor.ge.u", // TRICORE_INS_XOR_GE_U
"xor.ge", // TRICORE_INS_XOR_GE
"xor.lt.u", // TRICORE_INS_XOR_LT_U
"xor.lt", // TRICORE_INS_XOR_LT
"xor.ne", // TRICORE_INS_XOR_NE
"xor", // TRICORE_INS_XOR

File diff suppressed because it is too large Load Diff

View File

@ -1,26 +1,32 @@
/* Capstone Disassembly Engine, https://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2019 */
/* By Rot127 <unisono@quyllur.org>, 2023 */
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2022, */
/* Rot127 <unisono@quyllur.org> 2022-2023 */
/* Automatically generated file by Capstone's LLVM TableGen Disassembler Backend. */
/* Auto generated file. Do not edit. */
/* Code generator: https://github.com/capstone-engine/capstone/tree/next/suite/auto-sync */
/* LLVM-commit: <commit> */
/* LLVM-tag: <tag> */
TriCore_OP_GROUP_RegImmShift = 0,
TriCore_OP_GROUP_LdStmModeOperand = 1,
TriCore_OP_GROUP_MandatoryInvertedPredicateOperand = 2,
TriCore_OP_GROUP_Operand = 3,
TriCore_OP_GROUP_SExtImm_9 = 4,
TriCore_OP_GROUP_ZExtImm_16 = 5,
TriCore_OP_GROUP_SExtImm_16 = 6,
TriCore_OP_GROUP_ZExtImm_2 = 7,
TriCore_OP_GROUP_SExtImm_4 = 8,
TriCore_OP_GROUP_ZExtImm_4 = 9,
TriCore_OP_GROUP_ZExtImm_8 = 10,
TriCore_OP_GROUP_SExtImm_10 = 11,
TriCore_OP_GROUP_Disp24Imm = 12,
TriCore_OP_GROUP_Disp8Imm = 13,
TriCore_OP_GROUP_Disp15Imm = 14,
TriCore_OP_GROUP_Disp4Imm = 15,
TriCore_OP_GROUP_Off18Imm = 16,
TriCore_OP_GROUP_OExtImm_4 = 17,
TriCore_OP_GROUP_ZExtImm_9 = 18,
/* Do not edit. */
/* Capstone's LLVM TableGen Backends: */
/* https://github.com/capstone-engine/llvm-capstone */
TRICORE_OP_GROUP_RegImmShift = 0,
TRICORE_OP_GROUP_LdStmModeOperand = 1,
TRICORE_OP_GROUP_MandatoryInvertedPredicateOperand = 2,
TRICORE_OP_GROUP_Operand = 3,
TRICORE_OP_GROUP_SExtImm_9 = 4,
TRICORE_OP_GROUP_ZExtImm_16 = 5,
TRICORE_OP_GROUP_SExtImm_16 = 6,
TRICORE_OP_GROUP_ZExtImm_2 = 7,
TRICORE_OP_GROUP_SExtImm_4 = 8,
TRICORE_OP_GROUP_ZExtImm_4 = 9,
TRICORE_OP_GROUP_ZExtImm_8 = 10,
TRICORE_OP_GROUP_SExtImm_10 = 11,
TRICORE_OP_GROUP_Disp24Imm = 12,
TRICORE_OP_GROUP_Disp8Imm = 13,
TRICORE_OP_GROUP_Disp15Imm = 14,
TRICORE_OP_GROUP_Disp4Imm = 15,
TRICORE_OP_GROUP_Off18Imm = 16,
TRICORE_OP_GROUP_OExtImm_4 = 17,
TRICORE_OP_GROUP_ZExtImm_9 = 18,

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,74 +1,81 @@
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2022, */
/* Rot127 <unisono@quyllur.org> 2022-2023 */
/* Automatically generated file by the LLVM TableGen Disassembler Backend. */
/* Automatically generated file by Capstone's LLVM TableGen Disassembler Backend. */
/* LLVM-commit: <commit> */
/* LLVM-tag: <tag> */
/* Do not edit. */
/* Capstone's LLVM TableGen Backends: */
/* https://github.com/capstone-engine/llvm-capstone */
#ifdef GET_REGINFO_ENUM
#undef GET_REGINFO_ENUM
enum {
TriCore_NoRegister,
TriCore_FCX = 1,
TriCore_PC = 2,
TriCore_PCXI = 3,
TriCore_PSW = 4,
TriCore_A0 = 5,
TriCore_A1 = 6,
TriCore_A2 = 7,
TriCore_A3 = 8,
TriCore_A4 = 9,
TriCore_A5 = 10,
TriCore_A6 = 11,
TriCore_A7 = 12,
TriCore_A8 = 13,
TriCore_A9 = 14,
TriCore_A10 = 15,
TriCore_A11 = 16,
TriCore_A12 = 17,
TriCore_A13 = 18,
TriCore_A14 = 19,
TriCore_A15 = 20,
TriCore_D0 = 21,
TriCore_D1 = 22,
TriCore_D2 = 23,
TriCore_D3 = 24,
TriCore_D4 = 25,
TriCore_D5 = 26,
TriCore_D6 = 27,
TriCore_D7 = 28,
TriCore_D8 = 29,
TriCore_D9 = 30,
TriCore_D10 = 31,
TriCore_D11 = 32,
TriCore_D12 = 33,
TriCore_D13 = 34,
TriCore_D14 = 35,
TriCore_D15 = 36,
TriCore_E0 = 37,
TriCore_E2 = 38,
TriCore_E4 = 39,
TriCore_E6 = 40,
TriCore_E8 = 41,
TriCore_E10 = 42,
TriCore_E12 = 43,
TriCore_E14 = 44,
TriCore_P0 = 45,
TriCore_P2 = 46,
TriCore_P4 = 47,
TriCore_P6 = 48,
TriCore_P8 = 49,
TriCore_P10 = 50,
TriCore_P12 = 51,
TriCore_P14 = 52,
TriCore_A0_A1 = 53,
TriCore_A2_A3 = 54,
TriCore_A4_A5 = 55,
TriCore_A6_A7 = 56,
TriCore_A8_A9 = 57,
TriCore_A10_A11 = 58,
TriCore_A12_A13 = 59,
TriCore_A14_A15 = 60,
TRICORE_NoRegister,
TRICORE_FCX = 1,
TRICORE_PC = 2,
TRICORE_PCXI = 3,
TRICORE_PSW = 4,
TRICORE_A0 = 5,
TRICORE_A1 = 6,
TRICORE_A2 = 7,
TRICORE_A3 = 8,
TRICORE_A4 = 9,
TRICORE_A5 = 10,
TRICORE_A6 = 11,
TRICORE_A7 = 12,
TRICORE_A8 = 13,
TRICORE_A9 = 14,
TRICORE_A10 = 15,
TRICORE_A11 = 16,
TRICORE_A12 = 17,
TRICORE_A13 = 18,
TRICORE_A14 = 19,
TRICORE_A15 = 20,
TRICORE_D0 = 21,
TRICORE_D1 = 22,
TRICORE_D2 = 23,
TRICORE_D3 = 24,
TRICORE_D4 = 25,
TRICORE_D5 = 26,
TRICORE_D6 = 27,
TRICORE_D7 = 28,
TRICORE_D8 = 29,
TRICORE_D9 = 30,
TRICORE_D10 = 31,
TRICORE_D11 = 32,
TRICORE_D12 = 33,
TRICORE_D13 = 34,
TRICORE_D14 = 35,
TRICORE_D15 = 36,
TRICORE_E0 = 37,
TRICORE_E2 = 38,
TRICORE_E4 = 39,
TRICORE_E6 = 40,
TRICORE_E8 = 41,
TRICORE_E10 = 42,
TRICORE_E12 = 43,
TRICORE_E14 = 44,
TRICORE_P0 = 45,
TRICORE_P2 = 46,
TRICORE_P4 = 47,
TRICORE_P6 = 48,
TRICORE_P8 = 49,
TRICORE_P10 = 50,
TRICORE_P12 = 51,
TRICORE_P14 = 52,
TRICORE_A0_A1 = 53,
TRICORE_A2_A3 = 54,
TRICORE_A4_A5 = 55,
TRICORE_A6_A7 = 56,
TRICORE_A8_A9 = 57,
TRICORE_A10_A11 = 58,
TRICORE_A12_A13 = 59,
TRICORE_A14_A15 = 60,
NUM_TARGET_REGS // 61
};
@ -215,7 +222,7 @@ static const MCRegisterDesc TriCoreRegDesc[] = { // Descriptors
// RA Register Class...
static const MCPhysReg RA[] = {
TriCore_A0, TriCore_A1, TriCore_A2, TriCore_A3, TriCore_A4, TriCore_A5, TriCore_A6, TriCore_A7, TriCore_A8, TriCore_A9, TriCore_A10, TriCore_A11, TriCore_A12, TriCore_A13, TriCore_A14, TriCore_A15,
TRICORE_A0, TRICORE_A1, TRICORE_A2, TRICORE_A3, TRICORE_A4, TRICORE_A5, TRICORE_A6, TRICORE_A7, TRICORE_A8, TRICORE_A9, TRICORE_A10, TRICORE_A11, TRICORE_A12, TRICORE_A13, TRICORE_A14, TRICORE_A15,
};
// RA Bit set.
@ -225,7 +232,7 @@ static const MCRegisterDesc TriCoreRegDesc[] = { // Descriptors
// RD Register Class...
static const MCPhysReg RD[] = {
TriCore_D0, TriCore_D1, TriCore_D2, TriCore_D3, TriCore_D4, TriCore_D5, TriCore_D6, TriCore_D7, TriCore_D8, TriCore_D9, TriCore_D10, TriCore_D11, TriCore_D12, TriCore_D13, TriCore_D14, TriCore_D15,
TRICORE_D0, TRICORE_D1, TRICORE_D2, TRICORE_D3, TRICORE_D4, TRICORE_D5, TRICORE_D6, TRICORE_D7, TRICORE_D8, TRICORE_D9, TRICORE_D10, TRICORE_D11, TRICORE_D12, TRICORE_D13, TRICORE_D14, TRICORE_D15,
};
// RD Bit set.
@ -235,7 +242,7 @@ static const MCRegisterDesc TriCoreRegDesc[] = { // Descriptors
// PSRegs Register Class...
static const MCPhysReg PSRegs[] = {
TriCore_PSW, TriCore_PCXI, TriCore_PC, TriCore_FCX,
TRICORE_PSW, TRICORE_PCXI, TRICORE_PC, TRICORE_FCX,
};
// PSRegs Bit set.
@ -245,7 +252,7 @@ static const MCRegisterDesc TriCoreRegDesc[] = { // Descriptors
// PairAddrRegs Register Class...
static const MCPhysReg PairAddrRegs[] = {
TriCore_A0_A1, TriCore_A2_A3, TriCore_A4_A5, TriCore_A6_A7, TriCore_A8_A9, TriCore_A10_A11, TriCore_A12_A13, TriCore_A14_A15,
TRICORE_A0_A1, TRICORE_A2_A3, TRICORE_A4_A5, TRICORE_A6_A7, TRICORE_A8_A9, TRICORE_A10_A11, TRICORE_A12_A13, TRICORE_A14_A15,
};
// PairAddrRegs Bit set.
@ -255,7 +262,7 @@ static const MCRegisterDesc TriCoreRegDesc[] = { // Descriptors
// RE Register Class...
static const MCPhysReg RE[] = {
TriCore_E0, TriCore_E2, TriCore_E4, TriCore_E6, TriCore_E8, TriCore_E10, TriCore_E12, TriCore_E14,
TRICORE_E0, TRICORE_E2, TRICORE_E4, TRICORE_E6, TRICORE_E8, TRICORE_E10, TRICORE_E12, TRICORE_E14,
};
// RE Bit set.
@ -265,7 +272,7 @@ static const MCRegisterDesc TriCoreRegDesc[] = { // Descriptors
// RP Register Class...
static const MCPhysReg RP[] = {
TriCore_P0, TriCore_P2, TriCore_P4, TriCore_P6, TriCore_P8, TriCore_P10, TriCore_P12, TriCore_P14,
TRICORE_P0, TRICORE_P2, TRICORE_P4, TRICORE_P6, TRICORE_P8, TRICORE_P10, TRICORE_P12, TRICORE_P14,
};
// RP Bit set.

View File

@ -1,31 +1,38 @@
/* Capstone Disassembly Engine, http://www.capstone-engine.org */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2022, */
/* Rot127 <unisono@quyllur.org> 2022-2023 */
/* Automatically generated file by the LLVM TableGen Disassembler Backend. */
/* Automatically generated file by Capstone's LLVM TableGen Disassembler Backend. */
/* LLVM-commit: <commit> */
/* LLVM-tag: <tag> */
/* Do not edit. */
/* Capstone's LLVM TableGen Backends: */
/* https://github.com/capstone-engine/llvm-capstone */
#ifdef GET_SUBTARGETINFO_ENUM
#undef GET_SUBTARGETINFO_ENUM
enum {
TriCore_HasV110Ops = 0,
TriCore_HasV120Ops = 1,
TriCore_HasV130Ops = 2,
TriCore_HasV131Ops = 3,
TriCore_HasV160Ops = 4,
TriCore_HasV161Ops = 5,
TriCore_HasV162Ops = 6,
TriCore_TRICORE_PCP = 7,
TriCore_TRICORE_PCP2 = 8,
TriCore_TRICORE_RIDER_A = 9,
TriCore_TRICORE_V1_1 = 10,
TriCore_TRICORE_V1_2 = 11,
TriCore_TRICORE_V1_3 = 12,
TriCore_TRICORE_V1_3_1 = 13,
TriCore_TRICORE_V1_6 = 14,
TriCore_TRICORE_V1_6_1 = 15,
TriCore_TRICORE_V1_6_2 = 16,
TriCore_NumSubtargetFeatures = 17
TRICORE_HasV110Ops = 0,
TRICORE_HasV120Ops = 1,
TRICORE_HasV130Ops = 2,
TRICORE_HasV131Ops = 3,
TRICORE_HasV160Ops = 4,
TRICORE_HasV161Ops = 5,
TRICORE_HasV162Ops = 6,
TRICORE_TRICORE_PCP = 7,
TRICORE_TRICORE_PCP2 = 8,
TRICORE_TRICORE_RIDER_A = 9,
TRICORE_TRICORE_V1_1 = 10,
TRICORE_TRICORE_V1_2 = 11,
TRICORE_TRICORE_V1_3 = 12,
TRICORE_TRICORE_V1_3_1 = 13,
TRICORE_TRICORE_V1_6 = 14,
TRICORE_TRICORE_V1_6_1 = 15,
TRICORE_TRICORE_V1_6_2 = 16,
TRICORE_NumSubtargetFeatures = 17
};
#endif // GET_SUBTARGETINFO_ENUM

View File

@ -84,63 +84,63 @@ static inline void fill_tricore_imm(MCInst *MI, int32_t imm)
static bool fixup_op_mem(MCInst *pInst, unsigned int reg, int32_t disp)
{
switch (TriCore_map_insn_id(pInst->csh, pInst->Opcode)) {
case TriCore_INS_LDMST:
case TriCore_INS_LDLCX:
case TriCore_INS_LD_A:
case TriCore_INS_LD_B:
case TriCore_INS_LD_BU:
case TriCore_INS_LD_H:
case TriCore_INS_LD_HU:
case TriCore_INS_LD_D:
case TriCore_INS_LD_DA:
case TriCore_INS_LD_W:
case TriCore_INS_LD_Q:
case TriCore_INS_STLCX:
case TriCore_INS_STUCX:
case TriCore_INS_ST_A:
case TriCore_INS_ST_B:
case TriCore_INS_ST_H:
case TriCore_INS_ST_D:
case TriCore_INS_ST_DA:
case TriCore_INS_ST_W:
case TriCore_INS_ST_Q:
case TriCore_INS_CACHEI_I:
case TriCore_INS_CACHEI_W:
case TriCore_INS_CACHEI_WI:
case TriCore_INS_CACHEA_I:
case TriCore_INS_CACHEA_W:
case TriCore_INS_CACHEA_WI:
case TriCore_INS_CMPSWAP_W:
case TriCore_INS_SWAP_A:
case TriCore_INS_SWAP_W:
case TriCore_INS_SWAPMSK_W:
case TriCore_INS_LEA:
case TriCore_INS_LHA: {
case TRICORE_INS_LDMST:
case TRICORE_INS_LDLCX:
case TRICORE_INS_LD_A:
case TRICORE_INS_LD_B:
case TRICORE_INS_LD_BU:
case TRICORE_INS_LD_H:
case TRICORE_INS_LD_HU:
case TRICORE_INS_LD_D:
case TRICORE_INS_LD_DA:
case TRICORE_INS_LD_W:
case TRICORE_INS_LD_Q:
case TRICORE_INS_STLCX:
case TRICORE_INS_STUCX:
case TRICORE_INS_ST_A:
case TRICORE_INS_ST_B:
case TRICORE_INS_ST_H:
case TRICORE_INS_ST_D:
case TRICORE_INS_ST_DA:
case TRICORE_INS_ST_W:
case TRICORE_INS_ST_Q:
case TRICORE_INS_CACHEI_I:
case TRICORE_INS_CACHEI_W:
case TRICORE_INS_CACHEI_WI:
case TRICORE_INS_CACHEA_I:
case TRICORE_INS_CACHEA_W:
case TRICORE_INS_CACHEA_WI:
case TRICORE_INS_CMPSWAP_W:
case TRICORE_INS_SWAP_A:
case TRICORE_INS_SWAP_W:
case TRICORE_INS_SWAPMSK_W:
case TRICORE_INS_LEA:
case TRICORE_INS_LHA: {
switch (MCInst_getOpcode(pInst)) {
case TriCore_LDMST_abs:
case TriCore_LDLCX_abs:
case TriCore_LD_A_abs:
case TriCore_LD_B_abs:
case TriCore_LD_BU_abs:
case TriCore_LD_H_abs:
case TriCore_LD_HU_abs:
case TriCore_LD_D_abs:
case TriCore_LD_DA_abs:
case TriCore_LD_W_abs:
case TriCore_LD_Q_abs:
case TriCore_STLCX_abs:
case TriCore_STUCX_abs:
case TriCore_ST_A_abs:
case TriCore_ST_B_abs:
case TriCore_ST_H_abs:
case TriCore_ST_D_abs:
case TriCore_ST_DA_abs:
case TriCore_ST_W_abs:
case TriCore_ST_Q_abs:
case TriCore_SWAP_A_abs:
case TriCore_SWAP_W_abs:
case TriCore_LEA_abs:
case TriCore_LHA_abs: {
case TRICORE_LDMST_abs:
case TRICORE_LDLCX_abs:
case TRICORE_LD_A_abs:
case TRICORE_LD_B_abs:
case TRICORE_LD_BU_abs:
case TRICORE_LD_H_abs:
case TRICORE_LD_HU_abs:
case TRICORE_LD_D_abs:
case TRICORE_LD_DA_abs:
case TRICORE_LD_W_abs:
case TRICORE_LD_Q_abs:
case TRICORE_STLCX_abs:
case TRICORE_STUCX_abs:
case TRICORE_ST_A_abs:
case TRICORE_ST_B_abs:
case TRICORE_ST_H_abs:
case TRICORE_ST_D_abs:
case TRICORE_ST_DA_abs:
case TRICORE_ST_W_abs:
case TRICORE_ST_Q_abs:
case TRICORE_SWAP_A_abs:
case TRICORE_SWAP_W_abs:
case TRICORE_LEA_abs:
case TRICORE_LHA_abs: {
return false;
}
}
@ -244,21 +244,21 @@ static void print_sign_ext(MCInst *MI, int OpNum, SStream *O, unsigned n)
static void off4_fixup(MCInst *MI, uint64_t *off4)
{
switch (MCInst_getOpcode(MI)) {
case TriCore_LD_A_slro:
case TriCore_LD_A_sro:
case TriCore_LD_W_slro:
case TriCore_LD_W_sro:
case TriCore_ST_A_sro:
case TriCore_ST_A_ssro:
case TriCore_ST_W_sro:
case TriCore_ST_W_ssro: {
case TRICORE_LD_A_slro:
case TRICORE_LD_A_sro:
case TRICORE_LD_W_slro:
case TRICORE_LD_W_sro:
case TRICORE_ST_A_sro:
case TRICORE_ST_A_ssro:
case TRICORE_ST_W_sro:
case TRICORE_ST_W_ssro: {
*off4 *= 4;
break;
}
case TriCore_LD_H_sro:
case TriCore_LD_H_slro:
case TriCore_ST_H_sro:
case TriCore_ST_H_ssro: {
case TRICORE_LD_H_sro:
case TRICORE_LD_H_slro:
case TRICORE_ST_H_sro:
case TRICORE_ST_H_ssro: {
*off4 *= 2;
break;
}
@ -327,21 +327,21 @@ static void printDisp24Imm(MCInst *MI, int OpNum, SStream *O)
if (MCOperand_isImm(MO)) {
int32_t disp = (int32_t)MCOperand_getImm(MO);
switch (MCInst_getOpcode(MI)) {
case TriCore_CALL_b:
case TriCore_FCALL_b: {
case TRICORE_CALL_b:
case TRICORE_FCALL_b: {
disp = (int32_t)MI->address + sign_ext_n(disp * 2, 24);
break;
}
case TriCore_CALLA_b:
case TriCore_FCALLA_b:
case TriCore_JA_b:
case TriCore_JLA_b:
case TRICORE_CALLA_b:
case TRICORE_FCALLA_b:
case TRICORE_JA_b:
case TRICORE_JLA_b:
// = {disp24[23:20], 7b0000000, disp24[19:0], 1b0};
disp = ((disp & 0xf00000) << 28) |
((disp & 0xfffff) << 1);
break;
case TriCore_J_b:
case TriCore_JL_b:
case TRICORE_J_b:
case TRICORE_JL_b:
disp = (int32_t)MI->address + sign_ext_n(disp, 24) * 2;
break;
}
@ -358,32 +358,32 @@ static void printDisp15Imm(MCInst *MI, int OpNum, SStream *O)
if (MCOperand_isImm(MO)) {
int32_t disp = (int32_t)MCOperand_getImm(MO);
switch (MCInst_getOpcode(MI)) {
case TriCore_JEQ_brc:
case TriCore_JEQ_brr:
case TriCore_JEQ_A_brr:
case TriCore_JGE_brc:
case TriCore_JGE_brr:
case TriCore_JGE_U_brc:
case TriCore_JGE_U_brr:
case TriCore_JLT_brc:
case TriCore_JLT_brr:
case TriCore_JLT_U_brc:
case TriCore_JLT_U_brr:
case TriCore_JNE_brc:
case TriCore_JNE_brr:
case TriCore_JNE_A_brr:
case TriCore_JNED_brc:
case TriCore_JNED_brr:
case TriCore_JNEI_brc:
case TriCore_JNEI_brr:
case TriCore_JNZ_A_brr:
case TriCore_JNZ_T_brn:
case TriCore_JZ_A_brr:
case TriCore_JZ_T_brn:
case TRICORE_JEQ_brc:
case TRICORE_JEQ_brr:
case TRICORE_JEQ_A_brr:
case TRICORE_JGE_brc:
case TRICORE_JGE_brr:
case TRICORE_JGE_U_brc:
case TRICORE_JGE_U_brr:
case TRICORE_JLT_brc:
case TRICORE_JLT_brr:
case TRICORE_JLT_U_brc:
case TRICORE_JLT_U_brr:
case TRICORE_JNE_brc:
case TRICORE_JNE_brr:
case TRICORE_JNE_A_brr:
case TRICORE_JNED_brc:
case TRICORE_JNED_brr:
case TRICORE_JNEI_brc:
case TRICORE_JNEI_brr:
case TRICORE_JNZ_A_brr:
case TRICORE_JNZ_T_brn:
case TRICORE_JZ_A_brr:
case TRICORE_JZ_T_brn:
disp = (int32_t)MI->address + sign_ext_n(disp, 15) * 2;
break;
case TriCore_LOOP_brr:
case TriCore_LOOPU_brr:
case TRICORE_LOOP_brr:
case TRICORE_LOOPU_brr:
disp = (int32_t)MI->address + sign_ext_n(disp * 2, 15);
break;
default:
@ -403,12 +403,12 @@ static void printDisp8Imm(MCInst *MI, int OpNum, SStream *O)
if (MCOperand_isImm(MO)) {
int32_t disp = (int32_t)MCOperand_getImm(MO);
switch (MCInst_getOpcode(MI)) {
case TriCore_CALL_sb:
case TRICORE_CALL_sb:
disp = (int32_t)MI->address + sign_ext_n(2 * disp, 8);
break;
case TriCore_J_sb:
case TriCore_JNZ_sb:
case TriCore_JZ_sb:
case TRICORE_J_sb:
case TRICORE_JNZ_sb:
case TRICORE_JZ_sb:
disp = (int32_t)MI->address + sign_ext_n(disp, 8) * 2;
break;
default:
@ -428,29 +428,29 @@ static void printDisp4Imm(MCInst *MI, int OpNum, SStream *O)
if (MCOperand_isImm(MO)) {
int32_t disp = (int32_t)MCOperand_getImm(MO);
switch (MCInst_getOpcode(MI)) {
case TriCore_JEQ_sbc1:
case TriCore_JEQ_sbr1:
case TriCore_JGEZ_sbr:
case TriCore_JGTZ_sbr:
case TriCore_JLEZ_sbr:
case TriCore_JLTZ_sbr:
case TriCore_JNE_sbc1:
case TriCore_JNE_sbr1:
case TriCore_JNZ_sbr:
case TriCore_JNZ_A_sbr:
case TriCore_JNZ_T_sbrn:
case TriCore_JZ_sbr:
case TriCore_JZ_A_sbr:
case TriCore_JZ_T_sbrn:
case TRICORE_JEQ_sbc1:
case TRICORE_JEQ_sbr1:
case TRICORE_JGEZ_sbr:
case TRICORE_JGTZ_sbr:
case TRICORE_JLEZ_sbr:
case TRICORE_JLTZ_sbr:
case TRICORE_JNE_sbc1:
case TRICORE_JNE_sbr1:
case TRICORE_JNZ_sbr:
case TRICORE_JNZ_A_sbr:
case TRICORE_JNZ_T_sbrn:
case TRICORE_JZ_sbr:
case TRICORE_JZ_A_sbr:
case TRICORE_JZ_T_sbrn:
disp = (int32_t)MI->address + disp * 2;
break;
case TriCore_JEQ_sbc2:
case TriCore_JEQ_sbr2:
case TriCore_JNE_sbc2:
case TriCore_JNE_sbr2:
case TRICORE_JEQ_sbc2:
case TRICORE_JEQ_sbr2:
case TRICORE_JNE_sbc2:
case TRICORE_JNE_sbr2:
disp = (int32_t)MI->address + (disp + 16) * 2;
break;
case TriCore_LOOP_sbr:
case TRICORE_LOOP_sbr:
// {27b111111111111111111111111111, disp4, 0};
disp = (int32_t)MI->address +
((0b111111111111111111111111111 << 5) |

View File

@ -70,7 +70,7 @@ void TriCore_get_insn_id(cs_struct *h, cs_insn *insn, unsigned int id)
// this insn also belongs to JUMP group. add JUMP group
insn->detail
->groups[insn->detail->groups_count] =
TriCore_GRP_JUMP;
TRICORE_GRP_JUMP;
insn->detail->groups_count++;
}
#endif
@ -95,7 +95,7 @@ const char *TriCore_insn_name(csh handle, unsigned int id)
#ifndef CAPSTONE_DIET
unsigned int i;
if (id >= TriCore_INS_ENDING)
if (id >= TRICORE_INS_ENDING)
return NULL;
// handle special alias first
@ -112,16 +112,16 @@ const char *TriCore_insn_name(csh handle, unsigned int id)
#ifndef CAPSTONE_DIET
static name_map group_name_maps[] = {
{ TriCore_GRP_INVALID, NULL },
{ TriCore_GRP_CALL, "call" },
{ TriCore_GRP_JUMP, "jump" },
{ TRICORE_GRP_INVALID, NULL },
{ TRICORE_GRP_CALL, "call" },
{ TRICORE_GRP_JUMP, "jump" },
};
#endif
const char *TriCore_group_name(csh handle, unsigned int id)
{
#ifndef CAPSTONE_DIET
if (id >= TriCore_GRP_ENDING)
if (id >= TRICORE_GRP_ENDING)
return NULL;
return group_name_maps[id].name;

View File

@ -34,7 +34,7 @@ void print_insn_detail_tricore(csh handle, cs_insn *ins)
break;
case TRICORE_OP_MEM:
printf("\t\toperands[%u].type: MEM\n", i);
if (op->mem.base != TriCore_REG_INVALID)
if (op->mem.base != TRICORE_REG_INVALID)
printf("\t\t\toperands[%u].mem.base: REG = %s\n",
i, cs_reg_name(handle, op->mem.base));
if (op->mem.disp != 0)

View File

@ -56,68 +56,68 @@ typedef enum tricore_reg {
// generate content <TriCoreGenCSRegEnum.inc> begin
// clang-format off
TriCore_REG_INVALID = 0,
TriCore_REG_FCX = 1,
TriCore_REG_PC = 2,
TriCore_REG_PCXI = 3,
TriCore_REG_PSW = 4,
TriCore_REG_A0 = 5,
TriCore_REG_A1 = 6,
TriCore_REG_A2 = 7,
TriCore_REG_A3 = 8,
TriCore_REG_A4 = 9,
TriCore_REG_A5 = 10,
TriCore_REG_A6 = 11,
TriCore_REG_A7 = 12,
TriCore_REG_A8 = 13,
TriCore_REG_A9 = 14,
TriCore_REG_A10 = 15,
TriCore_REG_A11 = 16,
TriCore_REG_A12 = 17,
TriCore_REG_A13 = 18,
TriCore_REG_A14 = 19,
TriCore_REG_A15 = 20,
TriCore_REG_D0 = 21,
TriCore_REG_D1 = 22,
TriCore_REG_D2 = 23,
TriCore_REG_D3 = 24,
TriCore_REG_D4 = 25,
TriCore_REG_D5 = 26,
TriCore_REG_D6 = 27,
TriCore_REG_D7 = 28,
TriCore_REG_D8 = 29,
TriCore_REG_D9 = 30,
TriCore_REG_D10 = 31,
TriCore_REG_D11 = 32,
TriCore_REG_D12 = 33,
TriCore_REG_D13 = 34,
TriCore_REG_D14 = 35,
TriCore_REG_D15 = 36,
TriCore_REG_E0 = 37,
TriCore_REG_E2 = 38,
TriCore_REG_E4 = 39,
TriCore_REG_E6 = 40,
TriCore_REG_E8 = 41,
TriCore_REG_E10 = 42,
TriCore_REG_E12 = 43,
TriCore_REG_E14 = 44,
TriCore_REG_P0 = 45,
TriCore_REG_P2 = 46,
TriCore_REG_P4 = 47,
TriCore_REG_P6 = 48,
TriCore_REG_P8 = 49,
TriCore_REG_P10 = 50,
TriCore_REG_P12 = 51,
TriCore_REG_P14 = 52,
TriCore_REG_A0_A1 = 53,
TriCore_REG_A2_A3 = 54,
TriCore_REG_A4_A5 = 55,
TriCore_REG_A6_A7 = 56,
TriCore_REG_A8_A9 = 57,
TriCore_REG_A10_A11 = 58,
TriCore_REG_A12_A13 = 59,
TriCore_REG_A14_A15 = 60,
TriCore_REG_ENDING, // 61
TRICORE_REG_INVALID = 0,
TRICORE_REG_FCX = 1,
TRICORE_REG_PC = 2,
TRICORE_REG_PCXI = 3,
TRICORE_REG_PSW = 4,
TRICORE_REG_A0 = 5,
TRICORE_REG_A1 = 6,
TRICORE_REG_A2 = 7,
TRICORE_REG_A3 = 8,
TRICORE_REG_A4 = 9,
TRICORE_REG_A5 = 10,
TRICORE_REG_A6 = 11,
TRICORE_REG_A7 = 12,
TRICORE_REG_A8 = 13,
TRICORE_REG_A9 = 14,
TRICORE_REG_A10 = 15,
TRICORE_REG_A11 = 16,
TRICORE_REG_A12 = 17,
TRICORE_REG_A13 = 18,
TRICORE_REG_A14 = 19,
TRICORE_REG_A15 = 20,
TRICORE_REG_D0 = 21,
TRICORE_REG_D1 = 22,
TRICORE_REG_D2 = 23,
TRICORE_REG_D3 = 24,
TRICORE_REG_D4 = 25,
TRICORE_REG_D5 = 26,
TRICORE_REG_D6 = 27,
TRICORE_REG_D7 = 28,
TRICORE_REG_D8 = 29,
TRICORE_REG_D9 = 30,
TRICORE_REG_D10 = 31,
TRICORE_REG_D11 = 32,
TRICORE_REG_D12 = 33,
TRICORE_REG_D13 = 34,
TRICORE_REG_D14 = 35,
TRICORE_REG_D15 = 36,
TRICORE_REG_E0 = 37,
TRICORE_REG_E2 = 38,
TRICORE_REG_E4 = 39,
TRICORE_REG_E6 = 40,
TRICORE_REG_E8 = 41,
TRICORE_REG_E10 = 42,
TRICORE_REG_E12 = 43,
TRICORE_REG_E14 = 44,
TRICORE_REG_P0 = 45,
TRICORE_REG_P2 = 46,
TRICORE_REG_P4 = 47,
TRICORE_REG_P6 = 48,
TRICORE_REG_P8 = 49,
TRICORE_REG_P10 = 50,
TRICORE_REG_P12 = 51,
TRICORE_REG_P14 = 52,
TRICORE_REG_A0_A1 = 53,
TRICORE_REG_A2_A3 = 54,
TRICORE_REG_A4_A5 = 55,
TRICORE_REG_A6_A7 = 56,
TRICORE_REG_A8_A9 = 57,
TRICORE_REG_A10_A11 = 58,
TRICORE_REG_A12_A13 = 59,
TRICORE_REG_A14_A15 = 60,
TRICORE_REG_ENDING, // 61
// clang-format on
// generate content <TriCoreGenCSRegEnum.inc> end
@ -125,434 +125,433 @@ typedef enum tricore_reg {
//> TriCore instruction
typedef enum tricore_insn {
TriCore_INS_INVALID = 0,
TRICORE_INS_INVALID = 0,
// generate content <TriCoreGenCSInsnEnum.inc> begin
// clang-format off
TriCore_INS_XOR_T,
TriCore_INS_ABSDIFS_B,
TriCore_INS_ABSDIFS_H,
TriCore_INS_ABSDIFS,
TriCore_INS_ABSDIF_B,
TriCore_INS_ABSDIF_H,
TriCore_INS_ABSDIF,
TriCore_INS_ABSS_B,
TriCore_INS_ABSS_H,
TriCore_INS_ABSS,
TriCore_INS_ABS_B,
TriCore_INS_ABS_H,
TriCore_INS_ABS,
TriCore_INS_ADDC,
TriCore_INS_ADDIH_A,
TriCore_INS_ADDIH,
TriCore_INS_ADDI,
TriCore_INS_ADDSC_AT,
TriCore_INS_ADDSC_A,
TriCore_INS_ADDS_BU,
TriCore_INS_ADDS_B,
TriCore_INS_ADDS_H,
TriCore_INS_ADDS_HU,
TriCore_INS_ADDS_U,
TriCore_INS_ADDS,
TriCore_INS_ADDX,
TriCore_INS_ADD_A,
TriCore_INS_ADD_B,
TriCore_INS_ADD_F,
TriCore_INS_ADD_H,
TriCore_INS_ADD,
TriCore_INS_ANDN_T,
TriCore_INS_ANDN,
TriCore_INS_AND_ANDN_T,
TriCore_INS_AND_AND_T,
TriCore_INS_AND_EQ,
TriCore_INS_AND_GE_U,
TriCore_INS_AND_GE,
TriCore_INS_AND_LT_U,
TriCore_INS_AND_LT,
TriCore_INS_AND_NE,
TriCore_INS_AND_NOR_T,
TriCore_INS_AND_OR_T,
TriCore_INS_AND_T,
TriCore_INS_AND,
TriCore_INS_BISR,
TriCore_INS_BMERGE,
TriCore_INS_BSPLIT,
TriCore_INS_CACHEA_I,
TriCore_INS_CACHEA_WI,
TriCore_INS_CACHEA_W,
TriCore_INS_CACHEI_I,
TriCore_INS_CACHEI_WI,
TriCore_INS_CACHEI_W,
TriCore_INS_CADDN_A,
TriCore_INS_CADDN,
TriCore_INS_CADD_A,
TriCore_INS_CADD,
TriCore_INS_CALLA,
TriCore_INS_CALLI,
TriCore_INS_CALL,
TriCore_INS_CLO_B,
TriCore_INS_CLO_H,
TriCore_INS_CLO,
TriCore_INS_CLS_B,
TriCore_INS_CLS_H,
TriCore_INS_CLS,
TriCore_INS_CLZ_B,
TriCore_INS_CLZ_H,
TriCore_INS_CLZ,
TriCore_INS_CMOVN,
TriCore_INS_CMOV,
TriCore_INS_CMPSWAP_W,
TriCore_INS_CMP_F,
TriCore_INS_CRC32B_W,
TriCore_INS_CRC32L_W,
TriCore_INS_CRC32_B,
TriCore_INS_CRCN,
TriCore_INS_CSUBN_A,
TriCore_INS_CSUBN,
TriCore_INS_CSUB_A,
TriCore_INS_CSUB,
TriCore_INS_DEBUG,
TriCore_INS_DEXTR,
TriCore_INS_DIFSC_A,
TriCore_INS_DISABLE,
TriCore_INS_DIV_F,
TriCore_INS_DIV_U,
TriCore_INS_DIV,
TriCore_INS_DSYNC,
TriCore_INS_DVADJ,
TriCore_INS_DVINIT_BU,
TriCore_INS_DVINIT_B,
TriCore_INS_DVINIT_HU,
TriCore_INS_DVINIT_H,
TriCore_INS_DVINIT_U,
TriCore_INS_DVINIT,
TriCore_INS_DVSTEP_U,
TriCore_INS_DVSTEP,
TriCore_INS_ENABLE,
TriCore_INS_EQANY_B,
TriCore_INS_EQANY_H,
TriCore_INS_EQZ_A,
TriCore_INS_EQ_A,
TriCore_INS_EQ_B,
TriCore_INS_EQ_H,
TriCore_INS_EQ_W,
TriCore_INS_EQ,
TriCore_INS_EXTR_U,
TriCore_INS_EXTR,
TriCore_INS_FCALLA,
TriCore_INS_FCALLI,
TriCore_INS_FCALL,
TriCore_INS_FRET,
TriCore_INS_FTOHP,
TriCore_INS_FTOIZ,
TriCore_INS_FTOI,
TriCore_INS_FTOQ31Z,
TriCore_INS_FTOQ31,
TriCore_INS_FTOUZ,
TriCore_INS_FTOU,
TriCore_INS_GE_A,
TriCore_INS_GE_U,
TriCore_INS_GE,
TriCore_INS_HPTOF,
TriCore_INS_IMASK,
TriCore_INS_INSERT,
TriCore_INS_INSN_T,
TriCore_INS_INS_T,
TriCore_INS_ISYNC,
TriCore_INS_ITOF,
TriCore_INS_IXMAX_U,
TriCore_INS_IXMAX,
TriCore_INS_IXMIN_U,
TriCore_INS_IXMIN,
TriCore_INS_JA,
TriCore_INS_JEQ_A,
TriCore_INS_JEQ,
TriCore_INS_JGEZ,
TriCore_INS_JGE_U,
TriCore_INS_JGE,
TriCore_INS_JGTZ,
TriCore_INS_JI,
TriCore_INS_JLA,
TriCore_INS_JLEZ,
TriCore_INS_JLI,
TriCore_INS_JLTZ,
TriCore_INS_JLT_U,
TriCore_INS_JLT,
TriCore_INS_JL,
TriCore_INS_JNED,
TriCore_INS_JNEI,
TriCore_INS_JNE_A,
TriCore_INS_JNE,
TriCore_INS_JNZ_A,
TriCore_INS_JNZ_T,
TriCore_INS_JNZ,
TriCore_INS_JZ_A,
TriCore_INS_JZ_T,
TriCore_INS_JZ,
TriCore_INS_J,
TriCore_INS_LDLCX,
TriCore_INS_LDMST,
TriCore_INS_LDUCX,
TriCore_INS_LD_A,
TriCore_INS_LD_BU,
TriCore_INS_LD_B,
TriCore_INS_LD_DA,
TriCore_INS_LD_D,
TriCore_INS_LD_HU,
TriCore_INS_LD_H,
TriCore_INS_LD_Q,
TriCore_INS_LD_W,
TriCore_INS_LEA,
TriCore_INS_LHA,
TriCore_INS_LOOPU,
TriCore_INS_LOOP,
TriCore_INS_LT_A,
TriCore_INS_LT_B,
TriCore_INS_LT_BU,
TriCore_INS_LT_H,
TriCore_INS_LT_HU,
TriCore_INS_LT_U,
TriCore_INS_LT_W,
TriCore_INS_LT_WU,
TriCore_INS_LT,
TriCore_INS_MADDMS_H,
TriCore_INS_MADDMS_U,
TriCore_INS_MADDMS,
TriCore_INS_MADDM_H,
TriCore_INS_MADDM_Q,
TriCore_INS_MADDM_U,
TriCore_INS_MADDM,
TriCore_INS_MADDRS_H,
TriCore_INS_MADDRS_Q,
TriCore_INS_MADDR_H,
TriCore_INS_MADDR_Q,
TriCore_INS_MADDSUMS_H,
TriCore_INS_MADDSUM_H,
TriCore_INS_MADDSURS_H,
TriCore_INS_MADDSUR_H,
TriCore_INS_MADDSUS_H,
TriCore_INS_MADDSU_H,
TriCore_INS_MADDS_H,
TriCore_INS_MADDS_Q,
TriCore_INS_MADDS_U,
TriCore_INS_MADDS,
TriCore_INS_MADD_F,
TriCore_INS_MADD_H,
TriCore_INS_MADD_Q,
TriCore_INS_MADD_U,
TriCore_INS_MADD,
TriCore_INS_MAX_B,
TriCore_INS_MAX_BU,
TriCore_INS_MAX_H,
TriCore_INS_MAX_HU,
TriCore_INS_MAX_U,
TriCore_INS_MAX,
TriCore_INS_MFCR,
TriCore_INS_MIN_B,
TriCore_INS_MIN_BU,
TriCore_INS_MIN_H,
TriCore_INS_MIN_HU,
TriCore_INS_MIN_U,
TriCore_INS_MIN,
TriCore_INS_MOVH_A,
TriCore_INS_MOVH,
TriCore_INS_MOVZ_A,
TriCore_INS_MOV_AA,
TriCore_INS_MOV_A,
TriCore_INS_MOV_D,
TriCore_INS_MOV_U,
TriCore_INS_MOV,
TriCore_INS_MSUBADMS_H,
TriCore_INS_MSUBADM_H,
TriCore_INS_MSUBADRS_H,
TriCore_INS_MSUBADR_H,
TriCore_INS_MSUBADS_H,
TriCore_INS_MSUBAD_H,
TriCore_INS_MSUBMS_H,
TriCore_INS_MSUBMS_U,
TriCore_INS_MSUBMS,
TriCore_INS_MSUBM_H,
TriCore_INS_MSUBM_Q,
TriCore_INS_MSUBM_U,
TriCore_INS_MSUBM,
TriCore_INS_MSUBRS_H,
TriCore_INS_MSUBRS_Q,
TriCore_INS_MSUBR_H,
TriCore_INS_MSUBR_Q,
TriCore_INS_MSUBS_H,
TriCore_INS_MSUBS_Q,
TriCore_INS_MSUBS_U,
TriCore_INS_MSUBS,
TriCore_INS_MSUB_F,
TriCore_INS_MSUB_H,
TriCore_INS_MSUB_Q,
TriCore_INS_MSUB_U,
TriCore_INS_MSUB,
TriCore_INS_MTCR,
TriCore_INS_MULMS_H,
TriCore_INS_MULM_H,
TriCore_INS_MULM_U,
TriCore_INS_MULM,
TriCore_INS_MULR_H,
TriCore_INS_MULR_Q,
TriCore_INS_MULS_U,
TriCore_INS_MULS,
TriCore_INS_MUL_F,
TriCore_INS_MUL_H,
TriCore_INS_MUL_Q,
TriCore_INS_MUL_U,
TriCore_INS_MUL,
TriCore_INS_NAND_T,
TriCore_INS_NAND,
TriCore_INS_NEZ_A,
TriCore_INS_NE_A,
TriCore_INS_NE,
TriCore_INS_NOP,
TriCore_INS_NOR_T,
TriCore_INS_NOR,
TriCore_INS_NOT,
TriCore_INS_ORN_T,
TriCore_INS_ORN,
TriCore_INS_OR_ANDN_T,
TriCore_INS_OR_AND_T,
TriCore_INS_OR_EQ,
TriCore_INS_OR_GE_U,
TriCore_INS_OR_GE,
TriCore_INS_OR_LT_U,
TriCore_INS_OR_LT,
TriCore_INS_OR_NE,
TriCore_INS_OR_NOR_T,
TriCore_INS_OR_OR_T,
TriCore_INS_OR_T,
TriCore_INS_OR,
TriCore_INS_PACK,
TriCore_INS_PARITY,
TriCore_INS_POPCNT_W,
TriCore_INS_Q31TOF,
TriCore_INS_QSEED_F,
TriCore_INS_RESTORE,
TriCore_INS_RET,
TriCore_INS_RFE,
TriCore_INS_RFM,
TriCore_INS_RSLCX,
TriCore_INS_RSTV,
TriCore_INS_RSUBS_U,
TriCore_INS_RSUBS,
TriCore_INS_RSUB,
TriCore_INS_SAT_BU,
TriCore_INS_SAT_B,
TriCore_INS_SAT_HU,
TriCore_INS_SAT_H,
TriCore_INS_SELN_A,
TriCore_INS_SELN,
TriCore_INS_SEL_A,
TriCore_INS_SEL,
TriCore_INS_SHAS,
TriCore_INS_SHA_B,
TriCore_INS_SHA_H,
TriCore_INS_SHA,
TriCore_INS_SHUFFLE,
TriCore_INS_SH_ANDN_T,
TriCore_INS_SH_AND_T,
TriCore_INS_SH_B,
TriCore_INS_SH_EQ,
TriCore_INS_SH_GE_U,
TriCore_INS_SH_GE,
TriCore_INS_SH_H,
TriCore_INS_SH_LT_U,
TriCore_INS_SH_LT,
TriCore_INS_SH_NAND_T,
TriCore_INS_SH_NE,
TriCore_INS_SH_NOR_T,
TriCore_INS_SH_ORN_T,
TriCore_INS_SH_OR_T,
TriCore_INS_SH_XNOR_T,
TriCore_INS_SH_XOR_T,
TriCore_INS_SH,
TriCore_INS_STLCX,
TriCore_INS_STUCX,
TriCore_INS_ST_A,
TriCore_INS_ST_B,
TriCore_INS_ST_DA,
TriCore_INS_ST_D,
TriCore_INS_ST_H,
TriCore_INS_ST_Q,
TriCore_INS_ST_T,
TriCore_INS_ST_W,
TriCore_INS_SUBC,
TriCore_INS_SUBSC_A,
TriCore_INS_SUBS_BU,
TriCore_INS_SUBS_B,
TriCore_INS_SUBS_HU,
TriCore_INS_SUBS_H,
TriCore_INS_SUBS_U,
TriCore_INS_SUBS,
TriCore_INS_SUBX,
TriCore_INS_SUB_A,
TriCore_INS_SUB_B,
TriCore_INS_SUB_F,
TriCore_INS_SUB_H,
TriCore_INS_SUB,
TriCore_INS_SVLCX,
TriCore_INS_SWAPMSK_W,
TriCore_INS_SWAP_A,
TriCore_INS_SWAP_W,
TriCore_INS_SYSCALL,
TriCore_INS_TLBDEMAP,
TriCore_INS_TLBFLUSH_A,
TriCore_INS_TLBFLUSH_B,
TriCore_INS_TLBMAP,
TriCore_INS_TLBPROBE_A,
TriCore_INS_TLBPROBE_I,
TriCore_INS_TRAPSV,
TriCore_INS_TRAPV,
TriCore_INS_UNPACK,
TriCore_INS_UPDFL,
TriCore_INS_UTOF,
TriCore_INS_WAIT,
TriCore_INS_XNOR_T,
TriCore_INS_XNOR,
TriCore_INS_XOR_EQ,
TriCore_INS_XOR_GE_U,
TriCore_INS_XOR_GE,
TriCore_INS_XOR_LT_U,
TriCore_INS_XOR_LT,
TriCore_INS_XOR_NE,
TriCore_INS_XOR,
TRICORE_INS_XOR_T,
TRICORE_INS_ABSDIFS_B,
TRICORE_INS_ABSDIFS_H,
TRICORE_INS_ABSDIFS,
TRICORE_INS_ABSDIF_B,
TRICORE_INS_ABSDIF_H,
TRICORE_INS_ABSDIF,
TRICORE_INS_ABSS_B,
TRICORE_INS_ABSS_H,
TRICORE_INS_ABSS,
TRICORE_INS_ABS_B,
TRICORE_INS_ABS_H,
TRICORE_INS_ABS,
TRICORE_INS_ADDC,
TRICORE_INS_ADDIH_A,
TRICORE_INS_ADDIH,
TRICORE_INS_ADDI,
TRICORE_INS_ADDSC_AT,
TRICORE_INS_ADDSC_A,
TRICORE_INS_ADDS_BU,
TRICORE_INS_ADDS_B,
TRICORE_INS_ADDS_H,
TRICORE_INS_ADDS_HU,
TRICORE_INS_ADDS_U,
TRICORE_INS_ADDS,
TRICORE_INS_ADDX,
TRICORE_INS_ADD_A,
TRICORE_INS_ADD_B,
TRICORE_INS_ADD_F,
TRICORE_INS_ADD_H,
TRICORE_INS_ADD,
TRICORE_INS_ANDN_T,
TRICORE_INS_ANDN,
TRICORE_INS_AND_ANDN_T,
TRICORE_INS_AND_AND_T,
TRICORE_INS_AND_EQ,
TRICORE_INS_AND_GE_U,
TRICORE_INS_AND_GE,
TRICORE_INS_AND_LT_U,
TRICORE_INS_AND_LT,
TRICORE_INS_AND_NE,
TRICORE_INS_AND_NOR_T,
TRICORE_INS_AND_OR_T,
TRICORE_INS_AND_T,
TRICORE_INS_AND,
TRICORE_INS_BISR,
TRICORE_INS_BMERGE,
TRICORE_INS_BSPLIT,
TRICORE_INS_CACHEA_I,
TRICORE_INS_CACHEA_WI,
TRICORE_INS_CACHEA_W,
TRICORE_INS_CACHEI_I,
TRICORE_INS_CACHEI_WI,
TRICORE_INS_CACHEI_W,
TRICORE_INS_CADDN_A,
TRICORE_INS_CADDN,
TRICORE_INS_CADD_A,
TRICORE_INS_CADD,
TRICORE_INS_CALLA,
TRICORE_INS_CALLI,
TRICORE_INS_CALL,
TRICORE_INS_CLO_B,
TRICORE_INS_CLO_H,
TRICORE_INS_CLO,
TRICORE_INS_CLS_B,
TRICORE_INS_CLS_H,
TRICORE_INS_CLS,
TRICORE_INS_CLZ_B,
TRICORE_INS_CLZ_H,
TRICORE_INS_CLZ,
TRICORE_INS_CMOVN,
TRICORE_INS_CMOV,
TRICORE_INS_CMPSWAP_W,
TRICORE_INS_CMP_F,
TRICORE_INS_CRC32B_W,
TRICORE_INS_CRC32L_W,
TRICORE_INS_CRC32_B,
TRICORE_INS_CRCN,
TRICORE_INS_CSUBN_A,
TRICORE_INS_CSUBN,
TRICORE_INS_CSUB_A,
TRICORE_INS_CSUB,
TRICORE_INS_DEBUG,
TRICORE_INS_DEXTR,
TRICORE_INS_DIFSC_A,
TRICORE_INS_DISABLE,
TRICORE_INS_DIV_F,
TRICORE_INS_DIV_U,
TRICORE_INS_DIV,
TRICORE_INS_DSYNC,
TRICORE_INS_DVADJ,
TRICORE_INS_DVINIT_BU,
TRICORE_INS_DVINIT_B,
TRICORE_INS_DVINIT_HU,
TRICORE_INS_DVINIT_H,
TRICORE_INS_DVINIT_U,
TRICORE_INS_DVINIT,
TRICORE_INS_DVSTEP_U,
TRICORE_INS_DVSTEP,
TRICORE_INS_ENABLE,
TRICORE_INS_EQANY_B,
TRICORE_INS_EQANY_H,
TRICORE_INS_EQZ_A,
TRICORE_INS_EQ_A,
TRICORE_INS_EQ_B,
TRICORE_INS_EQ_H,
TRICORE_INS_EQ_W,
TRICORE_INS_EQ,
TRICORE_INS_EXTR_U,
TRICORE_INS_EXTR,
TRICORE_INS_FCALLA,
TRICORE_INS_FCALLI,
TRICORE_INS_FCALL,
TRICORE_INS_FRET,
TRICORE_INS_FTOHP,
TRICORE_INS_FTOIZ,
TRICORE_INS_FTOI,
TRICORE_INS_FTOQ31Z,
TRICORE_INS_FTOQ31,
TRICORE_INS_FTOUZ,
TRICORE_INS_FTOU,
TRICORE_INS_GE_A,
TRICORE_INS_GE_U,
TRICORE_INS_GE,
TRICORE_INS_HPTOF,
TRICORE_INS_IMASK,
TRICORE_INS_INSERT,
TRICORE_INS_INSN_T,
TRICORE_INS_INS_T,
TRICORE_INS_ISYNC,
TRICORE_INS_ITOF,
TRICORE_INS_IXMAX_U,
TRICORE_INS_IXMAX,
TRICORE_INS_IXMIN_U,
TRICORE_INS_IXMIN,
TRICORE_INS_JA,
TRICORE_INS_JEQ_A,
TRICORE_INS_JEQ,
TRICORE_INS_JGEZ,
TRICORE_INS_JGE_U,
TRICORE_INS_JGE,
TRICORE_INS_JGTZ,
TRICORE_INS_JI,
TRICORE_INS_JLA,
TRICORE_INS_JLEZ,
TRICORE_INS_JLI,
TRICORE_INS_JLTZ,
TRICORE_INS_JLT_U,
TRICORE_INS_JLT,
TRICORE_INS_JL,
TRICORE_INS_JNED,
TRICORE_INS_JNEI,
TRICORE_INS_JNE_A,
TRICORE_INS_JNE,
TRICORE_INS_JNZ_A,
TRICORE_INS_JNZ_T,
TRICORE_INS_JNZ,
TRICORE_INS_JZ_A,
TRICORE_INS_JZ_T,
TRICORE_INS_JZ,
TRICORE_INS_J,
TRICORE_INS_LDLCX,
TRICORE_INS_LDMST,
TRICORE_INS_LDUCX,
TRICORE_INS_LD_A,
TRICORE_INS_LD_BU,
TRICORE_INS_LD_B,
TRICORE_INS_LD_DA,
TRICORE_INS_LD_D,
TRICORE_INS_LD_HU,
TRICORE_INS_LD_H,
TRICORE_INS_LD_Q,
TRICORE_INS_LD_W,
TRICORE_INS_LEA,
TRICORE_INS_LHA,
TRICORE_INS_LOOPU,
TRICORE_INS_LOOP,
TRICORE_INS_LT_A,
TRICORE_INS_LT_B,
TRICORE_INS_LT_BU,
TRICORE_INS_LT_H,
TRICORE_INS_LT_HU,
TRICORE_INS_LT_U,
TRICORE_INS_LT_W,
TRICORE_INS_LT_WU,
TRICORE_INS_LT,
TRICORE_INS_MADDMS_H,
TRICORE_INS_MADDMS_U,
TRICORE_INS_MADDMS,
TRICORE_INS_MADDM_H,
TRICORE_INS_MADDM_Q,
TRICORE_INS_MADDM_U,
TRICORE_INS_MADDM,
TRICORE_INS_MADDRS_H,
TRICORE_INS_MADDRS_Q,
TRICORE_INS_MADDR_H,
TRICORE_INS_MADDR_Q,
TRICORE_INS_MADDSUMS_H,
TRICORE_INS_MADDSUM_H,
TRICORE_INS_MADDSURS_H,
TRICORE_INS_MADDSUR_H,
TRICORE_INS_MADDSUS_H,
TRICORE_INS_MADDSU_H,
TRICORE_INS_MADDS_H,
TRICORE_INS_MADDS_Q,
TRICORE_INS_MADDS_U,
TRICORE_INS_MADDS,
TRICORE_INS_MADD_F,
TRICORE_INS_MADD_H,
TRICORE_INS_MADD_Q,
TRICORE_INS_MADD_U,
TRICORE_INS_MADD,
TRICORE_INS_MAX_B,
TRICORE_INS_MAX_BU,
TRICORE_INS_MAX_H,
TRICORE_INS_MAX_HU,
TRICORE_INS_MAX_U,
TRICORE_INS_MAX,
TRICORE_INS_MFCR,
TRICORE_INS_MIN_B,
TRICORE_INS_MIN_BU,
TRICORE_INS_MIN_H,
TRICORE_INS_MIN_HU,
TRICORE_INS_MIN_U,
TRICORE_INS_MIN,
TRICORE_INS_MOVH_A,
TRICORE_INS_MOVH,
TRICORE_INS_MOVZ_A,
TRICORE_INS_MOV_AA,
TRICORE_INS_MOV_A,
TRICORE_INS_MOV_D,
TRICORE_INS_MOV_U,
TRICORE_INS_MOV,
TRICORE_INS_MSUBADMS_H,
TRICORE_INS_MSUBADM_H,
TRICORE_INS_MSUBADRS_H,
TRICORE_INS_MSUBADR_H,
TRICORE_INS_MSUBADS_H,
TRICORE_INS_MSUBAD_H,
TRICORE_INS_MSUBMS_H,
TRICORE_INS_MSUBMS_U,
TRICORE_INS_MSUBMS,
TRICORE_INS_MSUBM_H,
TRICORE_INS_MSUBM_Q,
TRICORE_INS_MSUBM_U,
TRICORE_INS_MSUBM,
TRICORE_INS_MSUBRS_H,
TRICORE_INS_MSUBRS_Q,
TRICORE_INS_MSUBR_H,
TRICORE_INS_MSUBR_Q,
TRICORE_INS_MSUBS_H,
TRICORE_INS_MSUBS_Q,
TRICORE_INS_MSUBS_U,
TRICORE_INS_MSUBS,
TRICORE_INS_MSUB_F,
TRICORE_INS_MSUB_H,
TRICORE_INS_MSUB_Q,
TRICORE_INS_MSUB_U,
TRICORE_INS_MSUB,
TRICORE_INS_MTCR,
TRICORE_INS_MULMS_H,
TRICORE_INS_MULM_H,
TRICORE_INS_MULM_U,
TRICORE_INS_MULM,
TRICORE_INS_MULR_H,
TRICORE_INS_MULR_Q,
TRICORE_INS_MULS_U,
TRICORE_INS_MULS,
TRICORE_INS_MUL_F,
TRICORE_INS_MUL_H,
TRICORE_INS_MUL_Q,
TRICORE_INS_MUL_U,
TRICORE_INS_MUL,
TRICORE_INS_NAND_T,
TRICORE_INS_NAND,
TRICORE_INS_NEZ_A,
TRICORE_INS_NE_A,
TRICORE_INS_NE,
TRICORE_INS_NOP,
TRICORE_INS_NOR_T,
TRICORE_INS_NOR,
TRICORE_INS_NOT,
TRICORE_INS_ORN_T,
TRICORE_INS_ORN,
TRICORE_INS_OR_ANDN_T,
TRICORE_INS_OR_AND_T,
TRICORE_INS_OR_EQ,
TRICORE_INS_OR_GE_U,
TRICORE_INS_OR_GE,
TRICORE_INS_OR_LT_U,
TRICORE_INS_OR_LT,
TRICORE_INS_OR_NE,
TRICORE_INS_OR_NOR_T,
TRICORE_INS_OR_OR_T,
TRICORE_INS_OR_T,
TRICORE_INS_OR,
TRICORE_INS_PACK,
TRICORE_INS_PARITY,
TRICORE_INS_POPCNT_W,
TRICORE_INS_Q31TOF,
TRICORE_INS_QSEED_F,
TRICORE_INS_RESTORE,
TRICORE_INS_RET,
TRICORE_INS_RFE,
TRICORE_INS_RFM,
TRICORE_INS_RSLCX,
TRICORE_INS_RSTV,
TRICORE_INS_RSUBS_U,
TRICORE_INS_RSUBS,
TRICORE_INS_RSUB,
TRICORE_INS_SAT_BU,
TRICORE_INS_SAT_B,
TRICORE_INS_SAT_HU,
TRICORE_INS_SAT_H,
TRICORE_INS_SELN_A,
TRICORE_INS_SELN,
TRICORE_INS_SEL_A,
TRICORE_INS_SEL,
TRICORE_INS_SHAS,
TRICORE_INS_SHA_B,
TRICORE_INS_SHA_H,
TRICORE_INS_SHA,
TRICORE_INS_SHUFFLE,
TRICORE_INS_SH_ANDN_T,
TRICORE_INS_SH_AND_T,
TRICORE_INS_SH_B,
TRICORE_INS_SH_EQ,
TRICORE_INS_SH_GE_U,
TRICORE_INS_SH_GE,
TRICORE_INS_SH_H,
TRICORE_INS_SH_LT_U,
TRICORE_INS_SH_LT,
TRICORE_INS_SH_NAND_T,
TRICORE_INS_SH_NE,
TRICORE_INS_SH_NOR_T,
TRICORE_INS_SH_ORN_T,
TRICORE_INS_SH_OR_T,
TRICORE_INS_SH_XNOR_T,
TRICORE_INS_SH_XOR_T,
TRICORE_INS_SH,
TRICORE_INS_STLCX,
TRICORE_INS_STUCX,
TRICORE_INS_ST_A,
TRICORE_INS_ST_B,
TRICORE_INS_ST_DA,
TRICORE_INS_ST_D,
TRICORE_INS_ST_H,
TRICORE_INS_ST_Q,
TRICORE_INS_ST_T,
TRICORE_INS_ST_W,
TRICORE_INS_SUBC,
TRICORE_INS_SUBSC_A,
TRICORE_INS_SUBS_BU,
TRICORE_INS_SUBS_B,
TRICORE_INS_SUBS_HU,
TRICORE_INS_SUBS_H,
TRICORE_INS_SUBS_U,
TRICORE_INS_SUBS,
TRICORE_INS_SUBX,
TRICORE_INS_SUB_A,
TRICORE_INS_SUB_B,
TRICORE_INS_SUB_F,
TRICORE_INS_SUB_H,
TRICORE_INS_SUB,
TRICORE_INS_SVLCX,
TRICORE_INS_SWAPMSK_W,
TRICORE_INS_SWAP_A,
TRICORE_INS_SWAP_W,
TRICORE_INS_SYSCALL,
TRICORE_INS_TLBDEMAP,
TRICORE_INS_TLBFLUSH_A,
TRICORE_INS_TLBFLUSH_B,
TRICORE_INS_TLBMAP,
TRICORE_INS_TLBPROBE_A,
TRICORE_INS_TLBPROBE_I,
TRICORE_INS_TRAPSV,
TRICORE_INS_TRAPV,
TRICORE_INS_UNPACK,
TRICORE_INS_UPDFL,
TRICORE_INS_UTOF,
TRICORE_INS_WAIT,
TRICORE_INS_XNOR_T,
TRICORE_INS_XNOR,
TRICORE_INS_XOR_EQ,
TRICORE_INS_XOR_GE_U,
TRICORE_INS_XOR_GE,
TRICORE_INS_XOR_LT_U,
TRICORE_INS_XOR_LT,
TRICORE_INS_XOR_NE,
TRICORE_INS_XOR,
// clang-format on
// generate content <TriCoreGenCSInsnEnum.inc> end
TriCore_INS_ENDING, // <-- mark the end of the list of instructions
TRICORE_INS_ENDING, // <-- mark the end of the list of instructions
} tricore_insn;
//> Group of TriCore instructions
typedef enum tricore_insn_group {
TriCore_GRP_INVALID, ///< = CS_GRP_INVALID
TRICORE_GRP_INVALID, ///< = CS_GRP_INVALID
//> Generic groups
TriCore_GRP_CALL, ///< = CS_GRP_CALL
TriCore_GRP_JUMP, ///< = CS_GRP_JUMP
TriCore_GRP_ENDING, ///< = mark the end of the list of groups
TRICORE_GRP_CALL, ///< = CS_GRP_CALL
TRICORE_GRP_JUMP, ///< = CS_GRP_JUMP
TRICORE_GRP_ENDING, ///< = mark the end of the list of groups
} tricore_insn_group;
typedef enum tricore_feature_t {
TriCore_FEATURE_INVALID = 0,
TRICORE_FEATURE_INVALID = 0,
// generate content <TriCoreGenCSFeatureEnum.inc> begin
// clang-format off
TriCore_FEATURE_HasV110 = 128,
TriCore_FEATURE_HasV120_UP,
TriCore_FEATURE_HasV130_UP,
TriCore_FEATURE_HasV161,
TriCore_FEATURE_HasV160_UP,
TriCore_FEATURE_HasV131_UP,
TriCore_FEATURE_HasV161_UP,
TriCore_FEATURE_HasV162,
TriCore_FEATURE_HasV162_UP,
TRICORE_FEATURE_HasV110 = 128,
TRICORE_FEATURE_HasV120_UP,
TRICORE_FEATURE_HasV130_UP,
TRICORE_FEATURE_HasV161,
TRICORE_FEATURE_HasV160_UP,
TRICORE_FEATURE_HasV131_UP,
TRICORE_FEATURE_HasV161_UP,
TRICORE_FEATURE_HasV162,
TRICORE_FEATURE_HasV162_UP,
// clang-format on
// generate content <TriCoreGenCSFeatureEnum.inc> end
TriCore_FEATURE_ENDING, // <-- mark the end of the list of features
TRICORE_FEATURE_ENDING, // <-- mark the end of the list of features
} tricore_feature;
#ifdef __cplusplus

View File

@ -40,7 +40,7 @@ char *get_detail_tricore(csh *p_handle, cs_mode mode, cs_insn *ins)
break;
case TRICORE_OP_MEM:
add_str(&result, "\t\toperands[%u].type: MEM\n", i);
if (op->mem.base != TriCore_REG_INVALID)
if (op->mem.base != TRICORE_REG_INVALID)
add_str(&result,
"\t\t\toperands[%u].mem.base: REG = %s\n",
i, cs_reg_name(handle, op->mem.base));

View File

@ -56,7 +56,7 @@ static void print_insn_detail(cs_insn *ins)
break;
case TRICORE_OP_MEM:
printf("\t\toperands[%u].type: MEM\n", i);
if (op->mem.base != TriCore_REG_INVALID)
if (op->mem.base != TRICORE_REG_INVALID)
printf("\t\t\toperands[%u].mem.base: REG = %s\n",
i, cs_reg_name(handle, op->mem.base));
if (op->mem.disp != 0)