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