Implement 32 bit MIPS16 instructions listed in m16.igen.
[deliverable/binutils-gdb.git] / sim / m32r / decode.h
CommitLineData
e0bd6e18
DE
1/* Decode header for m32r.
2
3This file is machine generated with CGEN.
4
5Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
6
7This file is part of the GNU Simulators.
8
9This program is free software; you can redistribute it and/or modify
10it under the terms of the GNU General Public License as published by
11the Free Software Foundation; either version 2, or (at your option)
12any later version.
13
14This program is distributed in the hope that it will be useful,
15but WITHOUT ANY WARRANTY; without even the implied warranty of
16MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17GNU General Public License for more details.
18
19You should have received a copy of the GNU General Public License along
20with this program; if not, write to the Free Software Foundation, Inc.,
2159 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22
23*/
24
25#ifndef M32R_DECODE_H
26#define M32R_DECODE_H
27
28#define EX(fn) XCONCAT3 (m32r,_ex_,fn)
29#define SEM(fn) XCONCAT3 (m32r,_sem_,fn)
cab58155 30#define SEMF(fn) XCONCAT3 (m32r,_semf_,fn)
e0bd6e18
DE
31
32extern EXTRACT_FN EX (illegal);
33extern SEMANTIC_FN SEM (illegal);
cab58155 34extern SEMANTIC_FN SEMF (illegal);
e0bd6e18
DE
35extern EXTRACT_FN EX (fmt_0_add);
36extern EXTRACT_FN EX (fmt_1_add3);
37extern EXTRACT_FN EX (fmt_2_and3);
38extern EXTRACT_FN EX (fmt_3_or3);
39extern EXTRACT_FN EX (fmt_4_addi);
cab58155
DE
40extern EXTRACT_FN EX (fmt_5_addv);
41extern EXTRACT_FN EX (fmt_6_addv3);
42extern EXTRACT_FN EX (fmt_7_addx);
43extern EXTRACT_FN EX (fmt_8_bc8);
44extern EXTRACT_FN EX (fmt_9_bc24);
45extern EXTRACT_FN EX (fmt_10_beq);
46extern EXTRACT_FN EX (fmt_11_beqz);
47extern EXTRACT_FN EX (fmt_12_bl8);
48extern EXTRACT_FN EX (fmt_13_bl24);
49extern EXTRACT_FN EX (fmt_14_bra8);
50extern EXTRACT_FN EX (fmt_15_bra24);
51extern EXTRACT_FN EX (fmt_16_cmp);
52extern EXTRACT_FN EX (fmt_17_cmpi);
53extern EXTRACT_FN EX (fmt_18_cmpui);
54extern EXTRACT_FN EX (fmt_19_div);
55extern EXTRACT_FN EX (fmt_20_jl);
56extern EXTRACT_FN EX (fmt_21_jmp);
57extern EXTRACT_FN EX (fmt_22_ld);
58extern EXTRACT_FN EX (fmt_23_ld_d);
59extern EXTRACT_FN EX (fmt_24_ldb);
60extern EXTRACT_FN EX (fmt_25_ldb_d);
61extern EXTRACT_FN EX (fmt_26_ldh);
62extern EXTRACT_FN EX (fmt_27_ldh_d);
63extern EXTRACT_FN EX (fmt_28_ld_plus);
64extern EXTRACT_FN EX (fmt_29_ld24);
65extern EXTRACT_FN EX (fmt_30_ldi8);
66extern EXTRACT_FN EX (fmt_31_ldi16);
67extern EXTRACT_FN EX (fmt_32_lock);
68extern EXTRACT_FN EX (fmt_33_machi);
69extern EXTRACT_FN EX (fmt_34_mulhi);
70extern EXTRACT_FN EX (fmt_35_mv);
71extern EXTRACT_FN EX (fmt_36_mvfachi);
72extern EXTRACT_FN EX (fmt_37_mvfc);
73extern EXTRACT_FN EX (fmt_38_mvtachi);
74extern EXTRACT_FN EX (fmt_39_mvtc);
75extern EXTRACT_FN EX (fmt_40_nop);
76extern EXTRACT_FN EX (fmt_41_rac);
77extern EXTRACT_FN EX (fmt_42_rte);
78extern EXTRACT_FN EX (fmt_43_seth);
79extern EXTRACT_FN EX (fmt_44_sll3);
80extern EXTRACT_FN EX (fmt_45_slli);
81extern EXTRACT_FN EX (fmt_46_st);
82extern EXTRACT_FN EX (fmt_47_st_d);
83extern EXTRACT_FN EX (fmt_48_stb);
84extern EXTRACT_FN EX (fmt_49_stb_d);
85extern EXTRACT_FN EX (fmt_50_sth);
86extern EXTRACT_FN EX (fmt_51_sth_d);
87extern EXTRACT_FN EX (fmt_52_st_plus);
88extern EXTRACT_FN EX (fmt_53_trap);
89extern EXTRACT_FN EX (fmt_54_unlock);
e0bd6e18
DE
90
91extern SEMANTIC_FN SEM (add);
cab58155 92extern SEMANTIC_FN SEMF (add);
e0bd6e18 93extern SEMANTIC_FN SEM (add3);
cab58155 94extern SEMANTIC_FN SEMF (add3);
e0bd6e18 95extern SEMANTIC_FN SEM (and);
cab58155 96extern SEMANTIC_FN SEMF (and);
e0bd6e18 97extern SEMANTIC_FN SEM (and3);
cab58155 98extern SEMANTIC_FN SEMF (and3);
e0bd6e18 99extern SEMANTIC_FN SEM (or);
cab58155 100extern SEMANTIC_FN SEMF (or);
e0bd6e18 101extern SEMANTIC_FN SEM (or3);
cab58155 102extern SEMANTIC_FN SEMF (or3);
e0bd6e18 103extern SEMANTIC_FN SEM (xor);
cab58155 104extern SEMANTIC_FN SEMF (xor);
e0bd6e18 105extern SEMANTIC_FN SEM (xor3);
cab58155 106extern SEMANTIC_FN SEMF (xor3);
e0bd6e18 107extern SEMANTIC_FN SEM (addi);
cab58155 108extern SEMANTIC_FN SEMF (addi);
e0bd6e18 109extern SEMANTIC_FN SEM (addv);
cab58155 110extern SEMANTIC_FN SEMF (addv);
e0bd6e18 111extern SEMANTIC_FN SEM (addv3);
cab58155 112extern SEMANTIC_FN SEMF (addv3);
e0bd6e18 113extern SEMANTIC_FN SEM (addx);
cab58155 114extern SEMANTIC_FN SEMF (addx);
e0bd6e18 115extern SEMANTIC_FN SEM (bc8);
cab58155 116extern SEMANTIC_FN SEMF (bc8);
e0bd6e18 117extern SEMANTIC_FN SEM (bc24);
cab58155 118extern SEMANTIC_FN SEMF (bc24);
e0bd6e18 119extern SEMANTIC_FN SEM (beq);
cab58155 120extern SEMANTIC_FN SEMF (beq);
e0bd6e18 121extern SEMANTIC_FN SEM (beqz);
cab58155 122extern SEMANTIC_FN SEMF (beqz);
e0bd6e18 123extern SEMANTIC_FN SEM (bgez);
cab58155 124extern SEMANTIC_FN SEMF (bgez);
e0bd6e18 125extern SEMANTIC_FN SEM (bgtz);
cab58155 126extern SEMANTIC_FN SEMF (bgtz);
e0bd6e18 127extern SEMANTIC_FN SEM (blez);
cab58155 128extern SEMANTIC_FN SEMF (blez);
e0bd6e18 129extern SEMANTIC_FN SEM (bltz);
cab58155 130extern SEMANTIC_FN SEMF (bltz);
e0bd6e18 131extern SEMANTIC_FN SEM (bnez);
cab58155 132extern SEMANTIC_FN SEMF (bnez);
e0bd6e18 133extern SEMANTIC_FN SEM (bl8);
cab58155 134extern SEMANTIC_FN SEMF (bl8);
e0bd6e18 135extern SEMANTIC_FN SEM (bl24);
cab58155 136extern SEMANTIC_FN SEMF (bl24);
e0bd6e18 137extern SEMANTIC_FN SEM (bnc8);
cab58155 138extern SEMANTIC_FN SEMF (bnc8);
e0bd6e18 139extern SEMANTIC_FN SEM (bnc24);
cab58155 140extern SEMANTIC_FN SEMF (bnc24);
e0bd6e18 141extern SEMANTIC_FN SEM (bne);
cab58155 142extern SEMANTIC_FN SEMF (bne);
e0bd6e18 143extern SEMANTIC_FN SEM (bra8);
cab58155 144extern SEMANTIC_FN SEMF (bra8);
e0bd6e18 145extern SEMANTIC_FN SEM (bra24);
cab58155 146extern SEMANTIC_FN SEMF (bra24);
e0bd6e18 147extern SEMANTIC_FN SEM (cmp);
cab58155 148extern SEMANTIC_FN SEMF (cmp);
e0bd6e18 149extern SEMANTIC_FN SEM (cmpi);
cab58155 150extern SEMANTIC_FN SEMF (cmpi);
e0bd6e18 151extern SEMANTIC_FN SEM (cmpu);
cab58155 152extern SEMANTIC_FN SEMF (cmpu);
e0bd6e18 153extern SEMANTIC_FN SEM (cmpui);
cab58155 154extern SEMANTIC_FN SEMF (cmpui);
e0bd6e18 155extern SEMANTIC_FN SEM (div);
cab58155 156extern SEMANTIC_FN SEMF (div);
e0bd6e18 157extern SEMANTIC_FN SEM (divu);
cab58155 158extern SEMANTIC_FN SEMF (divu);
e0bd6e18 159extern SEMANTIC_FN SEM (rem);
cab58155 160extern SEMANTIC_FN SEMF (rem);
e0bd6e18 161extern SEMANTIC_FN SEM (remu);
cab58155 162extern SEMANTIC_FN SEMF (remu);
e0bd6e18 163extern SEMANTIC_FN SEM (jl);
cab58155 164extern SEMANTIC_FN SEMF (jl);
e0bd6e18 165extern SEMANTIC_FN SEM (jmp);
cab58155 166extern SEMANTIC_FN SEMF (jmp);
e0bd6e18 167extern SEMANTIC_FN SEM (ld);
cab58155 168extern SEMANTIC_FN SEMF (ld);
e0bd6e18 169extern SEMANTIC_FN SEM (ld_d);
cab58155 170extern SEMANTIC_FN SEMF (ld_d);
e0bd6e18 171extern SEMANTIC_FN SEM (ldb);
cab58155 172extern SEMANTIC_FN SEMF (ldb);
e0bd6e18 173extern SEMANTIC_FN SEM (ldb_d);
cab58155 174extern SEMANTIC_FN SEMF (ldb_d);
e0bd6e18 175extern SEMANTIC_FN SEM (ldh);
cab58155 176extern SEMANTIC_FN SEMF (ldh);
e0bd6e18 177extern SEMANTIC_FN SEM (ldh_d);
cab58155 178extern SEMANTIC_FN SEMF (ldh_d);
e0bd6e18 179extern SEMANTIC_FN SEM (ldub);
cab58155 180extern SEMANTIC_FN SEMF (ldub);
e0bd6e18 181extern SEMANTIC_FN SEM (ldub_d);
cab58155 182extern SEMANTIC_FN SEMF (ldub_d);
e0bd6e18 183extern SEMANTIC_FN SEM (lduh);
cab58155 184extern SEMANTIC_FN SEMF (lduh);
e0bd6e18 185extern SEMANTIC_FN SEM (lduh_d);
cab58155 186extern SEMANTIC_FN SEMF (lduh_d);
e0bd6e18 187extern SEMANTIC_FN SEM (ld_plus);
cab58155 188extern SEMANTIC_FN SEMF (ld_plus);
e0bd6e18 189extern SEMANTIC_FN SEM (ld24);
cab58155 190extern SEMANTIC_FN SEMF (ld24);
e0bd6e18 191extern SEMANTIC_FN SEM (ldi8);
cab58155 192extern SEMANTIC_FN SEMF (ldi8);
e0bd6e18 193extern SEMANTIC_FN SEM (ldi16);
cab58155 194extern SEMANTIC_FN SEMF (ldi16);
e0bd6e18 195extern SEMANTIC_FN SEM (lock);
cab58155 196extern SEMANTIC_FN SEMF (lock);
e0bd6e18 197extern SEMANTIC_FN SEM (machi);
cab58155 198extern SEMANTIC_FN SEMF (machi);
e0bd6e18 199extern SEMANTIC_FN SEM (maclo);
cab58155 200extern SEMANTIC_FN SEMF (maclo);
e0bd6e18 201extern SEMANTIC_FN SEM (macwhi);
cab58155 202extern SEMANTIC_FN SEMF (macwhi);
e0bd6e18 203extern SEMANTIC_FN SEM (macwlo);
cab58155 204extern SEMANTIC_FN SEMF (macwlo);
e0bd6e18 205extern SEMANTIC_FN SEM (mul);
cab58155 206extern SEMANTIC_FN SEMF (mul);
e0bd6e18 207extern SEMANTIC_FN SEM (mulhi);
cab58155 208extern SEMANTIC_FN SEMF (mulhi);
e0bd6e18 209extern SEMANTIC_FN SEM (mullo);
cab58155 210extern SEMANTIC_FN SEMF (mullo);
e0bd6e18 211extern SEMANTIC_FN SEM (mulwhi);
cab58155 212extern SEMANTIC_FN SEMF (mulwhi);
e0bd6e18 213extern SEMANTIC_FN SEM (mulwlo);
cab58155 214extern SEMANTIC_FN SEMF (mulwlo);
e0bd6e18 215extern SEMANTIC_FN SEM (mv);
cab58155 216extern SEMANTIC_FN SEMF (mv);
e0bd6e18 217extern SEMANTIC_FN SEM (mvfachi);
cab58155 218extern SEMANTIC_FN SEMF (mvfachi);
e0bd6e18 219extern SEMANTIC_FN SEM (mvfaclo);
cab58155 220extern SEMANTIC_FN SEMF (mvfaclo);
e0bd6e18 221extern SEMANTIC_FN SEM (mvfacmi);
cab58155 222extern SEMANTIC_FN SEMF (mvfacmi);
e0bd6e18 223extern SEMANTIC_FN SEM (mvfc);
cab58155 224extern SEMANTIC_FN SEMF (mvfc);
e0bd6e18 225extern SEMANTIC_FN SEM (mvtachi);
cab58155 226extern SEMANTIC_FN SEMF (mvtachi);
e0bd6e18 227extern SEMANTIC_FN SEM (mvtaclo);
cab58155 228extern SEMANTIC_FN SEMF (mvtaclo);
e0bd6e18 229extern SEMANTIC_FN SEM (mvtc);
cab58155 230extern SEMANTIC_FN SEMF (mvtc);
e0bd6e18 231extern SEMANTIC_FN SEM (neg);
cab58155 232extern SEMANTIC_FN SEMF (neg);
e0bd6e18 233extern SEMANTIC_FN SEM (nop);
cab58155 234extern SEMANTIC_FN SEMF (nop);
e0bd6e18 235extern SEMANTIC_FN SEM (not);
cab58155 236extern SEMANTIC_FN SEMF (not);
e0bd6e18 237extern SEMANTIC_FN SEM (rac);
cab58155 238extern SEMANTIC_FN SEMF (rac);
e0bd6e18 239extern SEMANTIC_FN SEM (rach);
cab58155 240extern SEMANTIC_FN SEMF (rach);
e0bd6e18 241extern SEMANTIC_FN SEM (rte);
cab58155 242extern SEMANTIC_FN SEMF (rte);
e0bd6e18 243extern SEMANTIC_FN SEM (seth);
cab58155 244extern SEMANTIC_FN SEMF (seth);
e0bd6e18 245extern SEMANTIC_FN SEM (sll);
cab58155 246extern SEMANTIC_FN SEMF (sll);
e0bd6e18 247extern SEMANTIC_FN SEM (sll3);
cab58155 248extern SEMANTIC_FN SEMF (sll3);
e0bd6e18 249extern SEMANTIC_FN SEM (slli);
cab58155 250extern SEMANTIC_FN SEMF (slli);
e0bd6e18 251extern SEMANTIC_FN SEM (sra);
cab58155 252extern SEMANTIC_FN SEMF (sra);
e0bd6e18 253extern SEMANTIC_FN SEM (sra3);
cab58155 254extern SEMANTIC_FN SEMF (sra3);
e0bd6e18 255extern SEMANTIC_FN SEM (srai);
cab58155 256extern SEMANTIC_FN SEMF (srai);
e0bd6e18 257extern SEMANTIC_FN SEM (srl);
cab58155 258extern SEMANTIC_FN SEMF (srl);
e0bd6e18 259extern SEMANTIC_FN SEM (srl3);
cab58155 260extern SEMANTIC_FN SEMF (srl3);
e0bd6e18 261extern SEMANTIC_FN SEM (srli);
cab58155 262extern SEMANTIC_FN SEMF (srli);
e0bd6e18 263extern SEMANTIC_FN SEM (st);
cab58155 264extern SEMANTIC_FN SEMF (st);
e0bd6e18 265extern SEMANTIC_FN SEM (st_d);
cab58155 266extern SEMANTIC_FN SEMF (st_d);
e0bd6e18 267extern SEMANTIC_FN SEM (stb);
cab58155 268extern SEMANTIC_FN SEMF (stb);
e0bd6e18 269extern SEMANTIC_FN SEM (stb_d);
cab58155 270extern SEMANTIC_FN SEMF (stb_d);
e0bd6e18 271extern SEMANTIC_FN SEM (sth);
cab58155 272extern SEMANTIC_FN SEMF (sth);
e0bd6e18 273extern SEMANTIC_FN SEM (sth_d);
cab58155 274extern SEMANTIC_FN SEMF (sth_d);
e0bd6e18 275extern SEMANTIC_FN SEM (st_plus);
cab58155 276extern SEMANTIC_FN SEMF (st_plus);
e0bd6e18 277extern SEMANTIC_FN SEM (st_minus);
cab58155 278extern SEMANTIC_FN SEMF (st_minus);
e0bd6e18 279extern SEMANTIC_FN SEM (sub);
cab58155 280extern SEMANTIC_FN SEMF (sub);
e0bd6e18 281extern SEMANTIC_FN SEM (subv);
cab58155 282extern SEMANTIC_FN SEMF (subv);
e0bd6e18 283extern SEMANTIC_FN SEM (subx);
cab58155 284extern SEMANTIC_FN SEMF (subx);
e0bd6e18 285extern SEMANTIC_FN SEM (trap);
cab58155 286extern SEMANTIC_FN SEMF (trap);
e0bd6e18 287extern SEMANTIC_FN SEM (unlock);
cab58155 288extern SEMANTIC_FN SEMF (unlock);
e0bd6e18
DE
289
290#undef EX
291#undef SEM
cab58155 292#undef SEMF
e0bd6e18
DE
293
294#endif /* M32R_DECODE_H */
This page took 0.0551469999999999 seconds and 4 git commands to generate.