bitfields.isa revision 2239
1// -*- mode:c++ -*- 2 3//////////////////////////////////////////////////////////////////// 4// 5// Bitfield definitions. 6// 7 8def bitfield OPCODE <31:26>; 9def bitfield OPCODE_HI <31:29>; 10def bitfield OPCODE_LO <28:26>; 11 12def bitfield REGIMM <20:16>; 13def bitfield REGIMM_HI <20:19>; 14def bitfield REGIMM_LO <18:16>; 15 16def bitfield FUNCTION < 5: 0>; 17def bitfield FUNCTION_HI < 5: 3>; 18def bitfield FUNCTION_LO < 2: 0>; 19 20// Integer operate format 21def bitfield RT <20:16>; 22def bitfield RT_HI <20:19>; 23def bitfield RT_LO <18:16>; 24 25def bitfield RS <25:21>; 26def bitfield RS_MSB <25:25>; 27def bitfield RS_HI <25:24>; 28def bitfield RS_LO <23:21>; 29 30def bitfield RD <15:11>; 31 32def bitfield INTIMM <15: 0>; // integer immediate (literal) 33 34// Floating-point operate format 35def bitfield FMT <25:21>; 36def bitfield FR <25:21>; 37def bitfield FT <20:16>; 38def bitfield FS <15:11>; 39def bitfield FD <10:6>; 40 41def bitfield CC <20:18>; 42def bitfield ND <17:17>; 43def bitfield TF <16:16>; 44def bitfield MOVCI <16:16>; 45def bitfield MOVCF <16:16>; 46def bitfield SRL <21:21>; 47def bitfield SRLV < 6: 6>; 48def bitfield SA <10: 6>; 49 50// CP0 Register Select 51def bitfield SEL < 2: 0>; 52 53// Interrupts 54def bitfield SC < 5: 5>; 55 56// Branch format 57def bitfield OFFSET <15: 0>; // displacement 58 59// Jmp format 60def bitfield JMPTARG <25: 0>; 61def bitfield HINT <10: 6>; 62 63def bitfield SYSCALLCODE <25: 6>; 64def bitfield TRAPCODE <15:13>; 65 66// M5 instructions 67def bitfield M5FUNC <7:0>; 68