gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / opcodes / fr30-opc.h
CommitLineData
4162bb66 1/* DO NOT EDIT! -*- buffer-read-only: t -*- vi:set ro: */
252b5132
RH
2/* Instruction opcode header for fr30.
3
4THIS FILE IS MACHINE GENERATED WITH CGEN.
5
b3adc24a 6Copyright (C) 1996-2020 Free Software Foundation, Inc.
252b5132
RH
7
8This file is part of the GNU Binutils and/or GDB, the GNU debugger.
9
9b201bb5
NC
10 This file 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)
13 any later version.
252b5132 14
9b201bb5
NC
15 It is distributed in the hope that it will be useful, but WITHOUT
16 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
17 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
18 License for more details.
252b5132 19
9b201bb5
NC
20 You should have received a copy of the GNU General Public License along
21 with this program; if not, write to the Free Software Foundation, Inc.,
22 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
252b5132
RH
23
24*/
25
26#ifndef FR30_OPC_H
27#define FR30_OPC_H
28
f47b0d4a
AM
29#ifdef __cplusplus
30extern "C" {
31#endif
32
252b5132
RH
33/* -- opc.h */
34
35/* ??? This can be improved upon. */
47b0e7ad 36#undef CGEN_DIS_HASH_SIZE
252b5132 37#define CGEN_DIS_HASH_SIZE 16
47b0e7ad 38#undef CGEN_DIS_HASH
252b5132
RH
39#define CGEN_DIS_HASH(buffer, value) (((unsigned char *) (buffer))[0] >> 4)
40
41/* -- */
42/* Enum declaration for fr30 instruction types. */
43typedef enum cgen_insn_type {
44 FR30_INSN_INVALID, FR30_INSN_ADD, FR30_INSN_ADDI, FR30_INSN_ADD2
45 , FR30_INSN_ADDC, FR30_INSN_ADDN, FR30_INSN_ADDNI, FR30_INSN_ADDN2
46 , FR30_INSN_SUB, FR30_INSN_SUBC, FR30_INSN_SUBN, FR30_INSN_CMP
47 , FR30_INSN_CMPI, FR30_INSN_CMP2, FR30_INSN_AND, FR30_INSN_OR
48 , FR30_INSN_EOR, FR30_INSN_ANDM, FR30_INSN_ANDH, FR30_INSN_ANDB
49 , FR30_INSN_ORM, FR30_INSN_ORH, FR30_INSN_ORB, FR30_INSN_EORM
50 , FR30_INSN_EORH, FR30_INSN_EORB, FR30_INSN_BANDL, FR30_INSN_BORL
51 , FR30_INSN_BEORL, FR30_INSN_BANDH, FR30_INSN_BORH, FR30_INSN_BEORH
52 , FR30_INSN_BTSTL, FR30_INSN_BTSTH, FR30_INSN_MUL, FR30_INSN_MULU
53 , FR30_INSN_MULH, FR30_INSN_MULUH, FR30_INSN_DIV0S, FR30_INSN_DIV0U
54 , FR30_INSN_DIV1, FR30_INSN_DIV2, FR30_INSN_DIV3, FR30_INSN_DIV4S
55 , FR30_INSN_LSL, FR30_INSN_LSLI, FR30_INSN_LSL2, FR30_INSN_LSR
56 , FR30_INSN_LSRI, FR30_INSN_LSR2, FR30_INSN_ASR, FR30_INSN_ASRI
57 , FR30_INSN_ASR2, FR30_INSN_LDI8, FR30_INSN_LDI20, FR30_INSN_LDI32
58 , FR30_INSN_LD, FR30_INSN_LDUH, FR30_INSN_LDUB, FR30_INSN_LDR13
59 , FR30_INSN_LDR13UH, FR30_INSN_LDR13UB, FR30_INSN_LDR14, FR30_INSN_LDR14UH
60 , FR30_INSN_LDR14UB, FR30_INSN_LDR15, FR30_INSN_LDR15GR, FR30_INSN_LDR15DR
61 , FR30_INSN_LDR15PS, FR30_INSN_ST, FR30_INSN_STH, FR30_INSN_STB
62 , FR30_INSN_STR13, FR30_INSN_STR13H, FR30_INSN_STR13B, FR30_INSN_STR14
63 , FR30_INSN_STR14H, FR30_INSN_STR14B, FR30_INSN_STR15, FR30_INSN_STR15GR
64 , FR30_INSN_STR15DR, FR30_INSN_STR15PS, FR30_INSN_MOV, FR30_INSN_MOVDR
65 , FR30_INSN_MOVPS, FR30_INSN_MOV2DR, FR30_INSN_MOV2PS, FR30_INSN_JMP
66 , FR30_INSN_JMPD, FR30_INSN_CALLR, FR30_INSN_CALLRD, FR30_INSN_CALL
67 , FR30_INSN_CALLD, FR30_INSN_RET, FR30_INSN_RET_D, FR30_INSN_INT
68 , FR30_INSN_INTE, FR30_INSN_RETI, FR30_INSN_BRAD, FR30_INSN_BRA
69 , FR30_INSN_BNOD, FR30_INSN_BNO, FR30_INSN_BEQD, FR30_INSN_BEQ
70 , FR30_INSN_BNED, FR30_INSN_BNE, FR30_INSN_BCD, FR30_INSN_BC
71 , FR30_INSN_BNCD, FR30_INSN_BNC, FR30_INSN_BND, FR30_INSN_BN
72 , FR30_INSN_BPD, FR30_INSN_BP, FR30_INSN_BVD, FR30_INSN_BV
73 , FR30_INSN_BNVD, FR30_INSN_BNV, FR30_INSN_BLTD, FR30_INSN_BLT
74 , FR30_INSN_BGED, FR30_INSN_BGE, FR30_INSN_BLED, FR30_INSN_BLE
75 , FR30_INSN_BGTD, FR30_INSN_BGT, FR30_INSN_BLSD, FR30_INSN_BLS
76 , FR30_INSN_BHID, FR30_INSN_BHI, FR30_INSN_DMOVR13, FR30_INSN_DMOVR13H
77 , FR30_INSN_DMOVR13B, FR30_INSN_DMOVR13PI, FR30_INSN_DMOVR13PIH, FR30_INSN_DMOVR13PIB
78 , FR30_INSN_DMOVR15PI, FR30_INSN_DMOV2R13, FR30_INSN_DMOV2R13H, FR30_INSN_DMOV2R13B
79 , FR30_INSN_DMOV2R13PI, FR30_INSN_DMOV2R13PIH, FR30_INSN_DMOV2R13PIB, FR30_INSN_DMOV2R15PD
80 , FR30_INSN_LDRES, FR30_INSN_STRES, FR30_INSN_COPOP, FR30_INSN_COPLD
81 , FR30_INSN_COPST, FR30_INSN_COPSV, FR30_INSN_NOP, FR30_INSN_ANDCCR
82 , FR30_INSN_ORCCR, FR30_INSN_STILM, FR30_INSN_ADDSP, FR30_INSN_EXTSB
83 , FR30_INSN_EXTUB, FR30_INSN_EXTSH, FR30_INSN_EXTUH, FR30_INSN_LDM0
84 , FR30_INSN_LDM1, FR30_INSN_STM0, FR30_INSN_STM1, FR30_INSN_ENTER
27fca2d8 85 , FR30_INSN_LEAVE, FR30_INSN_XCHB
252b5132
RH
86} CGEN_INSN_TYPE;
87
88/* Index of `invalid' insn place holder. */
89#define CGEN_INSN_INVALID FR30_INSN_INVALID
90
91/* Total number of insns in table. */
27fca2d8 92#define MAX_INSNS ((int) FR30_INSN_XCHB + 1)
252b5132
RH
93
94/* This struct records data prior to insertion or after extraction. */
95struct cgen_fields
96{
97 int length;
98 long f_nil;
6bb95a0f 99 long f_anyof;
252b5132
RH
100 long f_op1;
101 long f_op2;
102 long f_op3;
103 long f_op4;
104 long f_op5;
105 long f_cc;
106 long f_ccc;
107 long f_Rj;
108 long f_Ri;
109 long f_Rs1;
110 long f_Rs2;
111 long f_Rjc;
112 long f_Ric;
113 long f_CRj;
114 long f_CRi;
115 long f_u4;
116 long f_u4c;
117 long f_i4;
118 long f_m4;
119 long f_u8;
120 long f_i8;
121 long f_i20_4;
122 long f_i20_16;
123 long f_i20;
124 long f_i32;
125 long f_udisp6;
126 long f_disp8;
127 long f_disp9;
128 long f_disp10;
129 long f_s10;
130 long f_u10;
131 long f_rel9;
132 long f_dir8;
133 long f_dir9;
134 long f_dir10;
135 long f_rel12;
136 long f_reglist_hi_st;
137 long f_reglist_low_st;
138 long f_reglist_hi_ld;
139 long f_reglist_low_ld;
140};
141
142#define CGEN_INIT_PARSE(od) \
143{\
144}
145#define CGEN_INIT_INSERT(od) \
146{\
147}
148#define CGEN_INIT_EXTRACT(od) \
149{\
150}
151#define CGEN_INIT_PRINT(od) \
152{\
153}
154
155
f47b0d4a
AM
156 #ifdef __cplusplus
157 }
158 #endif
159
252b5132 160#endif /* FR30_OPC_H */
This page took 1.018802 seconds and 4 git commands to generate.