blob: 24b6e060e3341c9a3478b7ee9426e378b3fe0f36 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
`define UNIMP 32'b00000000000000000000000000000000
`define J 32'b?????????????????????????_1100111
`define JAL 32'b?????????????????????????_1101111
`define JALR_C 32'b?????_?????_????????????_000_1101011
`define JALR_R 32'b?????_?????_????????????_001_1101011
`define JALR_J 32'b?????_?????_????????????_010_1101011
`define BEQ 32'b?????_?????_?????_???????_000_1100011
`define BNE 32'b?????_?????_?????_???????_001_1100011
`define BLT 32'b?????_?????_?????_???????_100_1100011
`define BGE 32'b?????_?????_?????_???????_101_1100011
`define BLTU 32'b?????_?????_?????_???????_110_1100011
`define BGEU 32'b?????_?????_?????_???????_111_1100011
`define LUI 32'b?????_????????????????????_0110111
`define ADDI 32'b?????_?????_????????????_000_0010011
`define SLLI 32'b?????_?????_??????_000000_001_0010011
`define SLTI 32'b?????_?????_????????????_010_0010011
`define SLTIU 32'b?????_?????_????????????_011_0010011
`define XORI 32'b?????_?????_????????????_100_0010011
`define SRLI 32'b?????_?????_??????_000000_101_0010011
`define SRAI 32'b?????_?????_??????_000000_101_0010011
`define ORI 32'b?????_?????_????????????_110_0010011
`define ANDI 32'b?????_?????_????????????_111_0010011
`define ADD 32'b?????_?????_?????_0000000000_0110011
`define SUB 32'b?????_?????_?????_1000000000_0110011
`define SLL 32'b?????_?????_?????_0000000001_0110011
`define SLT 32'b?????_?????_?????_0000000010_0110011
`define SLTU 32'b?????_?????_?????_0000000011_0110011
`define XOR 32'b?????_?????_?????_0000000100_0110011
`define SRL 32'b?????_?????_?????_0000000101_0110011
`define SRA 32'b?????_?????_?????_1000000101_0110011
`define OR 32'b?????_?????_?????_0000000110_0110011
`define AND 32'b?????_?????_?????_0000000111_0110011
`define MUL 32'b?????_?????_?????_0000001000_0110011
`define MULH 32'b?????_?????_?????_0000001001_0110011
`define MULHSU 32'b?????_?????_?????_0000001010_0110011
`define MULHU 32'b?????_?????_?????_0000001011_0110011
`define DIV 32'b?????_?????_?????_0000001100_0110011
`define DIVU 32'b?????_?????_?????_0000001101_0110011
`define REM 32'b?????_?????_?????_0000001110_0110011
`define REMU 32'b?????_?????_?????_0000001111_0110011
`define ADDIW 32'b?????_?????_????????????_000_0011011
`define SLLIW 32'b?????_?????_0_?????_000000_001_0011011
`define SRLIW 32'b?????_?????_0_?????_000000_101_0011011
`define SRAIW 32'b?????_?????_0_?????_000000_101_0011011
`define ADDW 32'b?????_?????_?????_0000000000_0111011
`define SUBW 32'b?????_?????_?????_1000000000_0111011
`define SLLW 32'b?????_?????_?????_0000000001_0111011
`define SRLW 32'b?????_?????_?????_0000000101_0111011
`define SRAW 32'b?????_?????_?????_1000000101_0111011
`define MULW 32'b?????_?????_?????_0000001000_0111011
`define DIVW 32'b?????_?????_?????_0000001100_0111011
`define DIVUW 32'b?????_?????_?????_0000001101_0111011
`define REMW 32'b?????_?????_?????_0000001110_0111011
`define REMUW 32'b?????_?????_?????_0000001111_0111011
`define L_B 32'b?????_?????_????????????_000_0000011
`define L_H 32'b?????_?????_????????????_001_0000011
`define L_W 32'b?????_?????_????????????_010_0000011
`define L_D 32'b?????_?????_????????????_011_0000011
`define L_BU 32'b?????_?????_????????????_100_0000011
`define L_HU 32'b?????_?????_????????????_101_0000011
`define L_WU 32'b?????_?????_????????????_110_0000011
`define SYNCI 32'b00000_?????_????????????_111_0000011
`define S_B 32'b?????_?????_?????_???????_000_0100011
`define S_H 32'b?????_?????_?????_???????_001_0100011
`define S_W 32'b?????_?????_?????_???????_010_0100011
`define S_D 32'b?????_?????_?????_???????_011_0100011
`define AMOADD_W 32'b?????_?????_?????_00000_000_10_1000011
`define AMOSWAP_W 32'b?????_?????_?????_00000_010_10_1000011
`define AMOAND_W 32'b?????_?????_?????_00000_100_10_1000011
`define AMOOR_W 32'b?????_?????_?????_00000_110_10_1000011
`define AMOMIN_W 32'b?????_?????_?????_00001_000_10_1000011
`define AMOMAX_W 32'b?????_?????_?????_00001_010_10_1000011
`define AMOMINU_W 32'b?????_?????_?????_00001_100_10_1000011
`define AMOMAXU_W 32'b?????_?????_?????_00001_110_10_1000011
`define AMOADD_D 32'b?????_?????_?????_00000_000_11_1000011
`define AMOSWAP_D 32'b?????_?????_?????_00000_010_11_1000011
`define AMOAND_D 32'b?????_?????_?????_00000_100_11_1000011
`define AMOOR_D 32'b?????_?????_?????_00000_110_11_1000011
`define AMOMIN_D 32'b?????_?????_?????_00001_000_11_1000011
`define AMOMAX_D 32'b?????_?????_?????_00001_010_11_1000011
`define AMOMINU_D 32'b?????_?????_?????_00001_100_11_1000011
`define AMOMAXU_D 32'b?????_?????_?????_00001_110_11_1000011
`define RDNPC 32'b?????_00000_00000_0000000000_0010111
`define MFCR 32'b?????_00000_?????_0000000001_0010111
`define MTCR 32'b00000_?????_?????_0000001001_0010111
`define SYNC 32'b00000_00000_00000_0000000010_0010111
`define SYSCALL 32'b00000_00000_????????????_011_0010111
`define EI 32'b?????_00000_00000_0000000000_1111111
`define DI 32'b?????_00000_00000_0000001000_1111111
`define MFPCR 32'b?????_00000_?????_0000000001_1111111
`define MTPCR 32'b00000_?????_?????_0000001001_1111111
`define ERET 32'b00000_00000_00000_0000000010_1111111
`define FADD_S 32'b?????_?????_?????_00000_???_00_1010011
`define FSUB_S 32'b?????_?????_?????_00001_???_00_1010011
`define FMUL_S 32'b?????_?????_?????_00010_???_00_1010011
`define FDIV_S 32'b?????_?????_?????_00011_???_00_1010011
`define FSQRT_S 32'b?????_?????_00000_00100_???_00_1010011
`define FSINJ_S 32'b?????_?????_?????_0010100000_1010011
`define FSINJN_S 32'b?????_?????_?????_0011000000_1010011
`define FSMUL_S 32'b?????_?????_?????_0011100000_1010011
`define FADD_D 32'b?????_?????_?????_00000_???_01_1010011
`define FSUB_D 32'b?????_?????_?????_00001_???_01_1010011
`define FMUL_D 32'b?????_?????_?????_00010_???_01_1010011
`define FDIV_D 32'b?????_?????_?????_00011_???_01_1010011
`define FSQRT_D 32'b?????_?????_00000_00100_???_01_1010011
`define FSINJ_D 32'b?????_?????_?????_0010100001_1010011
`define FSINJN_D 32'b?????_?????_?????_0011000001_1010011
`define FSMUL_D 32'b?????_?????_?????_0011100001_1010011
`define FCVT_L_S 32'b?????_?????_00000_01000_???_00_1010011
`define FCVTU_L_S 32'b?????_?????_00000_01001_???_00_1010011
`define FCVT_W_S 32'b?????_?????_00000_01010_???_00_1010011
`define FCVTU_W_S 32'b?????_?????_00000_01011_???_00_1010011
`define FCVT_L_D 32'b?????_?????_00000_01000_???_01_1010011
`define FCVTU_L_D 32'b?????_?????_00000_01001_???_01_1010011
`define FCVT_W_D 32'b?????_?????_00000_01010_???_01_1010011
`define FCVTU_W_D 32'b?????_?????_00000_01011_???_01_1010011
`define FCVT_S_L 32'b?????_?????_00000_01100_???_00_1010011
`define FCVTU_S_L 32'b?????_?????_00000_01101_???_00_1010011
`define FCVT_S_W 32'b?????_?????_00000_01110_???_00_1010011
`define FCVTU_S_W 32'b?????_?????_00000_01111_???_00_1010011
`define FCVT_D_L 32'b?????_?????_00000_01100_???_01_1010011
`define FCVTU_D_L 32'b?????_?????_00000_01101_???_01_1010011
`define FCVT_D_W 32'b?????_?????_00000_0111000001_1010011
`define FCVTU_D_W 32'b?????_?????_00000_0111100001_1010011
`define FCVT_S_D 32'b?????_?????_00000_10001_???_00_1010011
`define FCVT_D_S 32'b?????_?????_00000_1000000001_1010011
`define FC_EQ_S 32'b?????_?????_?????_1010100000_1010011
`define FC_LT_S 32'b?????_?????_?????_1011000000_1010011
`define FC_LE_S 32'b?????_?????_?????_1011100000_1010011
`define FC_EQ_D 32'b?????_?????_?????_1010100001_1010011
`define FC_LT_D 32'b?????_?????_?????_1011000001_1010011
`define FC_LE_D 32'b?????_?????_?????_1011100001_1010011
`define MFF_S 32'b?????_00000_?????_1100001000_1010011
`define MFF_D 32'b?????_00000_?????_1100001001_1010011
`define MFFL_D 32'b?????_00000_?????_1100101001_1010011
`define MFFH_D 32'b?????_00000_?????_1101001001_1010011
`define MTF_S 32'b?????_?????_00000_1110001000_1010011
`define MTF_D 32'b?????_?????_00000_1110001001_1010011
`define MTFLH_D 32'b?????_?????_?????_1110001101_1010011
`define LF_W 32'b?????_?????_????????????_010_0000111
`define LF_D 32'b?????_?????_????????????_011_0000111
`define SF_W 32'b?????_?????_?????_???????_010_0100111
`define SF_D 32'b?????_?????_?????_???????_011_0100111
`define FMADD_S 32'b?????_?????_?????_?????_???_00_1000011
`define FMSUB_S 32'b?????_?????_?????_?????_???_00_1000111
`define FNMSUB_S 32'b?????_?????_?????_?????_???_00_1001011
`define FNMADD_S 32'b?????_?????_?????_?????_???_00_1001111
`define FMADD_D 32'b?????_?????_?????_?????_???_01_1000011
`define FMSUB_D 32'b?????_?????_?????_?????_???_01_1000111
`define FNMSUB_D 32'b?????_?????_?????_?????_???_01_1001011
`define FNMADD_D 32'b?????_?????_?????_?????_???_01_1001111
|