* arch.c, arch.h, cpuall.h: New files.
[deliverable/binutils-gdb.git] / sim / m32r / arch.h
1 /* Simulator header for m32r.
2
3 Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
4
5 This file is part of the GNU Simulators.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License along
18 with this program; if not, write to the Free Software Foundation, Inc.,
19 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20
21 */
22
23 #ifndef M32R_ARCH_H
24 #define M32R_ARCH_H
25
26 #define MAX_INSNS 128
27
28 #define TARGET_BIG_ENDIAN 1
29
30 /* Shorthand macro for fetching registers. */
31 #define CPU(x) (CPU_CGEN_HW (current_cpu)->x)
32
33 /* Macros to determine which cpus are supported. */
34 #define HAVE_CPU_M32R
35
36 /* Enum declaration for mode types. */
37 typedef enum mode_type {
38 MODE_VM, MODE_BI, MODE_QI, MODE_HI,
39 MODE_SI, MODE_DI, MODE_UBI, MODE_UQI,
40 MODE_UHI, MODE_USI, MODE_UDI, MODE_SF,
41 MODE_DF, MODE_XF, MODE_TF, MODE_MAX
42 } MODE_TYPE;
43
44 #define MAX_MODES ((int) MODE_MAX)
45
46 /* Return name of instruction numbered INSN. */
47 #define INSN_NAME(insn) (m32r_cgen_insn_table_entries[insn].name)
48
49 /* Enum declaration for model types. */
50 typedef enum model_type {
51 MODEL_M32R_D, MODEL_TEST, MODEL_MAX
52 } MODEL_TYPE;
53
54 #define MAX_MODELS ((int) MODEL_MAX)
55
56 /* Enum declaration for unit types. */
57 typedef enum unit_type {
58 UNIT_NONE, UNIT_M32R_D_U_STORE, UNIT_M32R_D_U_LOAD, UNIT_M32R_D_U_EXEC,
59 UNIT_TEST_U_EXEC, UNIT_MAX
60 } UNIT_TYPE;
61
62 #define MAX_UNITS (1)
63
64 #endif /* M32R_ARCH_H */
This page took 0.032459 seconds and 5 git commands to generate.