static const uint16_t PredRegDecoderTable[] = {Hexagon::P0, Hexagon::P1,\r
Hexagon::P2, Hexagon::P3};\r
\r
-static DecodeStatus DecodeIntRegsRegisterClass(MCInst &Inst, unsigned RegNo,\r
- uint64_t /*Address*/,\r
- void const *Decoder) {\r
- if (RegNo > 31)\r
- return MCDisassembler::Fail;\r
-\r
- unsigned Register = IntRegDecoderTable[RegNo];\r
- Inst.addOperand(MCOperand::CreateReg(Register));\r
- return MCDisassembler::Success;\r
-}\r
-\r
-static DecodeStatus DecodeDoubleRegsRegisterClass(MCInst &Inst, unsigned RegNo,\r
- uint64_t /*Address*/,\r
- void const *Decoder) {\r
- if (RegNo > 15)\r
- return MCDisassembler::Fail;\r
-\r
- unsigned Register = DoubleRegDecoderTable[RegNo];\r
- Inst.addOperand(MCOperand::CreateReg(Register));\r
- return MCDisassembler::Success;\r
-}\r
-\r
-static DecodeStatus DecodePredRegsRegisterClass(MCInst &Inst, unsigned RegNo,\r
- uint64_t /*Address*/,\r
- void const *Decoder) {\r
- if (RegNo > 3)\r
- return MCDisassembler::Fail;\r
-\r
- unsigned Register = PredRegDecoderTable[RegNo];\r
- Inst.addOperand(MCOperand::CreateReg(Register));\r
- return MCDisassembler::Success;\r
-}\r
-\r
#include "HexagonGenDisassemblerTables.inc"\r
\r
static MCDisassembler *createHexagonDisassembler(Target const &T,\r