arm: Support pac_key_* register operand for MRS/MSR in Armv8.1-M Mainline
[binutils-gdb.git] / sim / ft32 / ft32-sim.h
blob1bacd2e791affea556d9a9e0ee4f4d3c4d500bab
1 /* Simulator for the FT32 processor
3 Copyright (C) 2008-2024 Free Software Foundation, Inc.
4 Contributed by FTDI <support@ftdichip.com>
6 This file is part of simulators.
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
21 #ifndef _FT32_SIM_H_
22 #define _FT32_SIM_H_
24 #include <stdint.h>
26 #include "sim/sim-ft32.h"
28 #define FT32_HARD_FP 29
29 #define FT32_HARD_CC 30
30 #define FT32_HARD_SP 31
32 struct ft32_cpu_state {
33 uint32_t regs[32];
34 uint32_t pc;
35 uint64_t num_i;
36 uint64_t cycles;
37 uint64_t next_tick_cycle;
38 int pm_unlock;
39 uint32_t pm_addr;
40 int exception;
43 #define FT32_SIM_CPU(cpu) ((struct ft32_cpu_state *) CPU_ARCH_DATA (cpu))
45 #endif /* _FT32_SIM_H_ */