| 1 | /* Simulator header for cris. |
| 2 | |
| 3 | THIS FILE IS MACHINE GENERATED WITH CGEN. |
| 4 | |
| 5 | Copyright 1996-2020 Free Software Foundation, Inc. |
| 6 | |
| 7 | This file is part of the GNU simulators. |
| 8 | |
| 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. |
| 13 | |
| 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. |
| 18 | |
| 19 | You should have received a copy of the GNU General Public License along |
| 20 | with this program; if not, see <http://www.gnu.org/licenses/>. |
| 21 | |
| 22 | */ |
| 23 | |
| 24 | #ifndef CRIS_ARCH_H |
| 25 | #define CRIS_ARCH_H |
| 26 | |
| 27 | /* Enum declaration for model types. */ |
| 28 | typedef enum model_type { |
| 29 | MODEL_CRISV10, MODEL_CRISV32, MODEL_MAX |
| 30 | } MODEL_TYPE; |
| 31 | |
| 32 | #define MAX_MODELS ((int) MODEL_MAX) |
| 33 | |
| 34 | /* Enum declaration for unit types. */ |
| 35 | typedef enum unit_type { |
| 36 | UNIT_NONE, UNIT_CRISV10_U_MOVEM, UNIT_CRISV10_U_MULTIPLY, UNIT_CRISV10_U_SKIP4 |
| 37 | , UNIT_CRISV10_U_STALL, UNIT_CRISV10_U_CONST32, UNIT_CRISV10_U_CONST16, UNIT_CRISV10_U_MEM |
| 38 | , UNIT_CRISV10_U_EXEC, UNIT_CRISV32_U_EXEC_TO_SR, UNIT_CRISV32_U_EXEC_MOVEM, UNIT_CRISV32_U_EXEC |
| 39 | , UNIT_CRISV32_U_SKIP4, UNIT_CRISV32_U_CONST32, UNIT_CRISV32_U_CONST16, UNIT_CRISV32_U_JUMP |
| 40 | , UNIT_CRISV32_U_JUMP_SR, UNIT_CRISV32_U_JUMP_R, UNIT_CRISV32_U_BRANCH, UNIT_CRISV32_U_MULTIPLY |
| 41 | , UNIT_CRISV32_U_MOVEM_MTOR, UNIT_CRISV32_U_MOVEM_RTOM, UNIT_CRISV32_U_MEM_W, UNIT_CRISV32_U_MEM_R |
| 42 | , UNIT_CRISV32_U_MEM, UNIT_MAX |
| 43 | } UNIT_TYPE; |
| 44 | |
| 45 | #define MAX_UNITS (4) |
| 46 | |
| 47 | #endif /* CRIS_ARCH_H */ |