ARM: Use the new DataOp format to simplify the decoder.
This commit is contained in:
parent
f409d7819d
commit
b8f064c88c
|
@ -388,7 +388,7 @@ ArmStaticInst::printDataInst(std::ostream &os) const
|
||||||
{
|
{
|
||||||
printMnemonic(os, machInst.sField ? "s" : "");
|
printMnemonic(os, machInst.sField ? "s" : "");
|
||||||
//XXX It would be nice if the decoder figured this all out for us.
|
//XXX It would be nice if the decoder figured this all out for us.
|
||||||
unsigned opcode = machInst.opcode24_21;
|
unsigned opcode = machInst.opcode;
|
||||||
bool firstOp = true;
|
bool firstOp = true;
|
||||||
|
|
||||||
// Destination
|
// Destination
|
||||||
|
|
|
@ -34,9 +34,8 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
// Opcode fields
|
// Opcode fields
|
||||||
|
def bitfield ENCODING encoding;
|
||||||
def bitfield OPCODE opcode;
|
def bitfield OPCODE opcode;
|
||||||
def bitfield OPCODE_27_25 opcode27_25;
|
|
||||||
def bitfield OPCODE_24_21 opcode24_21;
|
|
||||||
def bitfield OPCODE_24_23 opcode24_23;
|
def bitfield OPCODE_24_23 opcode24_23;
|
||||||
def bitfield OPCODE_24 opcode24;
|
def bitfield OPCODE_24 opcode24;
|
||||||
def bitfield OPCODE_23_20 opcode23_20;
|
def bitfield OPCODE_23_20 opcode23_20;
|
||||||
|
@ -52,7 +51,7 @@ def bitfield OPCODE_19 opcode19;
|
||||||
def bitfield OPCODE_15_12 opcode15_12;
|
def bitfield OPCODE_15_12 opcode15_12;
|
||||||
def bitfield OPCODE_15 opcode15;
|
def bitfield OPCODE_15 opcode15;
|
||||||
def bitfield OPCODE_9 opcode9;
|
def bitfield OPCODE_9 opcode9;
|
||||||
def bitfield OPCODE_7_4 opcode7_4;
|
def bitfield MISC_OPCODE miscOpcode;
|
||||||
def bitfield OPCODE_7_5 opcode7_5;
|
def bitfield OPCODE_7_5 opcode7_5;
|
||||||
def bitfield OPCODE_7_6 opcode7_6;
|
def bitfield OPCODE_7_6 opcode7_6;
|
||||||
def bitfield OPCODE_7 opcode7;
|
def bitfield OPCODE_7 opcode7;
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -44,9 +44,8 @@ namespace ArmISA
|
||||||
Bitfield<32> isMisc;
|
Bitfield<32> isMisc;
|
||||||
|
|
||||||
// All the different types of opcode fields.
|
// All the different types of opcode fields.
|
||||||
Bitfield<27, 25> opcode;
|
Bitfield<27, 25> encoding;
|
||||||
Bitfield<27, 25> opcode27_25;
|
Bitfield<24, 21> opcode;
|
||||||
Bitfield<24, 21> opcode24_21;
|
|
||||||
Bitfield<24, 23> opcode24_23;
|
Bitfield<24, 23> opcode24_23;
|
||||||
Bitfield<24> opcode24;
|
Bitfield<24> opcode24;
|
||||||
Bitfield<23, 20> opcode23_20;
|
Bitfield<23, 20> opcode23_20;
|
||||||
|
@ -62,7 +61,7 @@ namespace ArmISA
|
||||||
Bitfield<15, 12> opcode15_12;
|
Bitfield<15, 12> opcode15_12;
|
||||||
Bitfield<15> opcode15;
|
Bitfield<15> opcode15;
|
||||||
Bitfield<9> opcode9;
|
Bitfield<9> opcode9;
|
||||||
Bitfield<7, 4> opcode7_4;
|
Bitfield<7, 4> miscOpcode;
|
||||||
Bitfield<7, 5> opcode7_5;
|
Bitfield<7, 5> opcode7_5;
|
||||||
Bitfield<7, 6> opcode7_6;
|
Bitfield<7, 6> opcode7_6;
|
||||||
Bitfield<7> opcode7;
|
Bitfield<7> opcode7;
|
||||||
|
|
Loading…
Reference in a new issue