1 /* score-inst.h -- Score Instructions Table
2 Copyright (C) 2006-2022 Free Software Foundation, Inc.
4 Brain.lin (brain.lin@sunplusct.com)
5 Mei Ligang (ligang@sunnorth.com.cn)
6 Pei-Lin Tsai (pltsai@sunplus.com)
8 This file is part of GAS, the GNU Assembler.
10 GAS is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
12 the Free Software Foundation; either version 3, or (at your option)
15 GAS is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
20 You should have received a copy of the GNU General Public License
21 along with GAS; see the file COPYING3. If not, write to the Free
22 Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
28 #define LDST_UNALIGN_MASK 0x0000007f
29 #define UA_LCB 0x00000060
30 #define UA_LCW 0x00000062
31 #define UA_LCE 0x00000066
32 #define UA_SCB 0x00000068
33 #define UA_SCW 0x0000006a
34 #define UA_SCE 0x0000006e
35 #define UA_LL 0x0000000c
36 #define UA_SC 0x0000000e
37 #define LDST16_RR_MASK 0x0000000f
46 #define LDST16_RI_MASK 0x7007
47 #define N16_LWP 0x7000
48 #define N16_LHP 0x7001
49 #define N16_LBUP 0x7003
50 #define N16_SWP 0x7004
51 #define N16_SHP 0x7005
52 #define N16_SBP 0x7007
53 #define N16_LIU 0x5000
55 #define OPC_PSEUDOLDST_MASK 0x00000007
69 /* Sub opcdoe opcode. */
105 Rd_rvalueRs_postSI12
,
107 Rd_lvalueRs_postSI12
,
176 _VALUE_LDST_LO16
= 23,
185 _SIMM16_pic
= 42, /* Index in score_df_range. */
186 _IMM16_LO16_pic
= 43,
194 _IMM5_MULTI_LOAD
= 50,
199 #define OP_REG_TYPE (1 << 6)
200 #define OP_IMM_TYPE (1 << 7)
201 #define OP_SH_REGD (OP_REG_TYPE |20)
202 #define OP_SH_REGS1 (OP_REG_TYPE |15)
203 #define OP_SH_REGS2 (OP_REG_TYPE |10)
204 #define OP_SH_I (OP_IMM_TYPE | 1)
205 #define OP_SH_RI15 (OP_IMM_TYPE | 0)
206 #define OP_SH_I12 (OP_IMM_TYPE | 3)
207 #define OP_SH_DISP24 (OP_IMM_TYPE | 1)
208 #define OP_SH_DISP19_p1 (OP_IMM_TYPE |15)
209 #define OP_SH_DISP19_p2 (OP_IMM_TYPE | 1)
210 #define OP_SH_I5 (OP_IMM_TYPE |10)
211 #define OP_SH_I10 (OP_IMM_TYPE | 5)
212 #define OP_SH_COPID (OP_IMM_TYPE | 5)
213 #define OP_SH_TRAPI5 (OP_IMM_TYPE |15)
214 #define OP_SH_I15 (OP_IMM_TYPE |10)
216 #define OP16_SH_REGD (OP_REG_TYPE | 8)
217 #define OP16_SH_REGS1 (OP_REG_TYPE | 4)
218 #define OP16_SH_I45 (OP_IMM_TYPE | 3)
219 #define OP16_SH_I8 (OP_IMM_TYPE | 0)
220 #define OP16_SH_DISP8 (OP_IMM_TYPE | 0)
221 #define OP16_SH_DISP11 (OP_IMM_TYPE | 1)
232 /* s3_s7: Globals for both tc-score.c and elf32-score.c. */