Generate MCDisassembler for VLIW?

Hi:
For now I’ve already successfully generated DisassemblerTable from TableGen with -gen-disassembler which contains the following function:


template<typename InsnType>
static DecodeStatus decodeInstruction(const uint8_t DecodeTable[], MCInst &MI,
InsnType insn, uint64_t Address,
const void *DisAsm,
const MCSubtargetInfo &STI)

However in our ISA, instructions can exceed the limit of uint64_t, and passing APInt as InsnType fails to compile because this function calls InsnType CurFieldValue = 0 which is invalid for APInt.
My question is, which type should I use here?

Zhang

See the commits here: https://reviews.llvm.org/D52100
This patch adds support for instructions bigger than 64 bits. A number of the function signatures change.

Steve