]>
Commit | Line | Data |
---|---|---|
f8194bf7 JW |
1 | `define COND_EQ 4'b0000 /* Z set */ |
2 | `define COND_NE 4'b0001 /* Z clear */ | |
3 | `define COND_CS 4'b0010 /* C set */ | |
4 | `define COND_CC 4'b0011 /* C clear */ | |
5 | `define COND_MI 4'b0100 /* N set */ | |
6 | `define COND_PL 4'b0101 /* N clear */ | |
7 | `define COND_VS 4'b0110 /* V set */ | |
8 | `define COND_VC 4'b0111 /* V clear */ | |
9 | `define COND_HI 4'b1000 /* C set and Z clear */ | |
10 | `define COND_LS 4'b1001 /* C clear or Z set */ | |
7aa8541b | 11 | `define COND_GE 4'b1010 /* N equal to V */ |
f8194bf7 JW |
12 | `define COND_LT 4'b1011 /* N not equal to V */ |
13 | `define COND_GT 4'b1100 /* Z clear AND (N equals V) */ | |
14 | `define COND_LE 4'b1101 /* Z set OR (N not equals V) */ | |
15 | `define COND_AL 4'b1110 /* TRUE */ | |
16 | `define COND_NV 4'b1111 /* FALSE */ | |
349ce587 JW |
17 | |
18 | `define COND_MATTERS(x) ((x != `COND_AL) && (x != `COND_NV)) | |
19 | ||
20 | `define ALU_AND 4'b0000 | |
21 | `define ALU_EOR 4'b0001 | |
22 | `define ALU_SUB 4'b0010 | |
23 | `define ALU_RSB 4'b0011 | |
24 | `define ALU_ADD 4'b0100 | |
25 | `define ALU_ADC 4'b0101 | |
26 | `define ALU_SBC 4'b0110 | |
27 | `define ALU_RBC 4'b0111 | |
28 | `define ALU_TST 4'b1000 | |
29 | `define ALU_TEQ 4'b1001 | |
30 | `define ALU_CMP 4'b1010 | |
31 | `define ALU_CMN 4'b1011 | |
32 | `define ALU_ORR 4'b1100 | |
33 | `define ALU_MOV 4'b1101 | |
34 | `define ALU_BIC 4'b1110 | |
35 | `define ALU_MVN 4'b1111 | |
7aa8541b JW |
36 | |
37 | `define SHIFT_LSL 2'b00 | |
38 | `define SHIFT_LSR 2'b01 | |
39 | `define SHIFT_ASR 2'b10 | |
ae281afd JW |
40 | `define SHIFT_ROR 2'b11 |
41 | ||
42 | `define CPSR_N 31 | |
43 | `define CPSR_Z 30 | |
44 | `define CPSR_C 29 | |
45 | `define CPSR_V 28 | |
46 | `define CPSR_I 7 | |
47 | `define CPSR_F 6 | |
26049339 CL |
48 | |
49 | `define SHIFT_LSL 2'b00 | |
50 | `define SHIFT_LSR 2'b01 | |
51 | `define SHIFT_ASR 2'b10 | |
52 | `define SHIFT_ROR 2'b11 |