bitfields.isa (2632:1bb2f91485ea) bitfields.isa (2686:f0d591379ac3)
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
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>;
20def bitfield RS <25:21>;
21def bitfield RS_MSB <25:25>;
22def bitfield RS_HI <25:24>;
23def bitfield RS_LO <23:21>;
29def bitfield RS_SRL <25:22>;
30
24def bitfield RS_SRL <25:22>;
25def bitfield RS_RT <25:16>;
26def bitfield RT <20:16>;
27def bitfield RT_HI <20:19>;
28def bitfield RT_LO <18:16>;
29def bitfield RT_RD <20:11>;
31def bitfield RD <15:11>;
32
30def bitfield RD <15:11>;
31
33def bitfield INTIMM <15: 0>; // integer immediate (literal)
32def bitfield INTIMM <15: 0>;
34
35// Floating-point operate format
36def bitfield FMT <25:21>;
37def bitfield FR <25:21>;
38def bitfield FT <20:16>;
39def bitfield FS <15:11>;
40def bitfield FD <10:6>;
41
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// Floating Point Condition Codes
51def bitfield CC <10:8>;
52def bitfield BRANCH_CC <20:18>;
53
54// CP0 Register Select
55def bitfield SEL < 2: 0>;
56
57// Interrupts
58def bitfield SC < 5: 5>;
59
60// Branch format
61def bitfield OFFSET <15: 0>; // displacement
62
63// Jmp format
64def bitfield JMPTARG <25: 0>;
65def bitfield HINT <10: 6>;
66
67def bitfield SYSCALLCODE <25: 6>;
68def bitfield TRAPCODE <15:13>;
69
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 ND <17:17>;
42def bitfield TF <16:16>;
43def bitfield MOVCI <16:16>;
44def bitfield MOVCF <16:16>;
45def bitfield SRL <21:21>;
46def bitfield SRLV < 6: 6>;
47def bitfield SA <10: 6>;
48
49// Floating Point Condition Codes
50def bitfield CC <10:8>;
51def bitfield BRANCH_CC <20:18>;
52
53// CP0 Register Select
54def bitfield SEL < 2: 0>;
55
56// Interrupts
57def bitfield SC < 5: 5>;
58
59// Branch format
60def bitfield OFFSET <15: 0>; // displacement
61
62// Jmp format
63def bitfield JMPTARG <25: 0>;
64def bitfield HINT <10: 6>;
65
66def bitfield SYSCALLCODE <25: 6>;
67def bitfield TRAPCODE <15:13>;
68
69// EXT/INS instructions
70def bitfield MSB <15:11>;
71def bitfield LSB <10: 6>;
72
70// M5 instructions
71def bitfield M5FUNC <7:0>;
73// M5 instructions
74def bitfield M5FUNC <7:0>;