ETISS 0.8.0
Extendable Translating Instruction Set Simulator (version 0.8.0)
etiss
ArchImpl
RV64IMACFD
RV64IMACFD.h
Go to the documentation of this file.
1
7
#ifndef ETISS_RV64IMACFDArch_RV64IMACFD_H_
8
#define ETISS_RV64IMACFDArch_RV64IMACFD_H_
9
#include <stdio.h>
10
#include "etiss/jit/CPU.h"
11
12
#ifdef __cplusplus
13
extern
"C"
{
14
#endif
15
#pragma pack(push, 1)
16
struct
RV64IMACFD
{
17
ETISS_CPU
cpu
;
// original cpu struct must be defined as the first field of the new structure. this allows to cast X * to ETISS_CPU * and vice vers
18
etiss_uint64
ZERO
;
19
etiss_uint64
RA
;
20
etiss_uint64
SP
;
21
etiss_uint64
GP
;
22
etiss_uint64
TP
;
23
etiss_uint64
T0
;
24
etiss_uint64
T1
;
25
etiss_uint64
T2
;
26
etiss_uint64
S0
;
27
etiss_uint64
S1
;
28
etiss_uint64
A0
;
29
etiss_uint64
A1
;
30
etiss_uint64
A2
;
31
etiss_uint64
A3
;
32
etiss_uint64
A4
;
33
etiss_uint64
A5
;
34
etiss_uint64
A6
;
35
etiss_uint64
A7
;
36
etiss_uint64
S2
;
37
etiss_uint64
S3
;
38
etiss_uint64
S4
;
39
etiss_uint64
S5
;
40
etiss_uint64
S6
;
41
etiss_uint64
S7
;
42
etiss_uint64
S8
;
43
etiss_uint64
S9
;
44
etiss_uint64
S10
;
45
etiss_uint64
S11
;
46
etiss_uint64
T3
;
47
etiss_uint64
T4
;
48
etiss_uint64
T5
;
49
etiss_uint64
T6
;
50
etiss_uint64
*
X
[32];
51
etiss_uint64
ins_X
[32];
52
etiss_uint64
FENCE
[8];
53
etiss_uint8
RES
[8];
54
etiss_uint8
PRIV
;
55
etiss_uint64
DPC
;
56
etiss_uint64
FCSR
;
57
etiss_uint64
MSTATUS
;
58
etiss_uint64
MIE
;
59
etiss_uint64
MIP
;
60
etiss_uint64
*
CSR
[4096];
61
etiss_uint64
ins_CSR
[4096];
62
etiss_uint64
F
[32];
63
etiss_uint64
RES_ADDR
;
64
};
65
66
#pragma pack(pop)
// undo changes
67
typedef
struct
RV64IMACFD
RV64IMACFD
;
// convenient use of X instead of struct X in generated C code
68
#ifdef __cplusplus
69
}
// extern "C"
70
#endif
71
#endif
etiss_uint64
uint64_t etiss_uint64
Definition:
types.h:96
etiss_uint8
uint8_t etiss_uint8
Definition:
types.h:87
ETISS_CPU
basic cpu state structure needed for execution of any cpu architecture.
Definition:
CPU.h:89
RV64IMACFD
Generated on Thu, 24 Oct 2024 10:16:12 +0200.
Definition:
RV64IMACFD.h:16
RV64IMACFD::S8
etiss_uint64 S8
Definition:
RV64IMACFD.h:42
RV64IMACFD::A6
etiss_uint64 A6
Definition:
RV64IMACFD.h:34
RV64IMACFD::cpu
ETISS_CPU cpu
Definition:
RV64IMACFD.h:17
RV64IMACFD::A1
etiss_uint64 A1
Definition:
RV64IMACFD.h:29
RV64IMACFD::T1
etiss_uint64 T1
Definition:
RV64IMACFD.h:24
RV64IMACFD::S2
etiss_uint64 S2
Definition:
RV64IMACFD.h:36
RV64IMACFD::FENCE
etiss_uint64 FENCE[8]
Definition:
RV64IMACFD.h:52
RV64IMACFD::RES_ADDR
etiss_uint64 RES_ADDR
Definition:
RV64IMACFD.h:63
RV64IMACFD::A5
etiss_uint64 A5
Definition:
RV64IMACFD.h:33
RV64IMACFD::MIP
etiss_uint64 MIP
Definition:
RV64IMACFD.h:59
RV64IMACFD::ins_X
etiss_uint64 ins_X[32]
Definition:
RV64IMACFD.h:51
RV64IMACFD::PRIV
etiss_uint8 PRIV
Definition:
RV64IMACFD.h:54
RV64IMACFD::S1
etiss_uint64 S1
Definition:
RV64IMACFD.h:27
RV64IMACFD::MIE
etiss_uint64 MIE
Definition:
RV64IMACFD.h:58
RV64IMACFD::ins_CSR
etiss_uint64 ins_CSR[4096]
Definition:
RV64IMACFD.h:61
RV64IMACFD::T2
etiss_uint64 T2
Definition:
RV64IMACFD.h:25
RV64IMACFD::S10
etiss_uint64 S10
Definition:
RV64IMACFD.h:44
RV64IMACFD::CSR
etiss_uint64 * CSR[4096]
Definition:
RV64IMACFD.h:60
RV64IMACFD::RA
etiss_uint64 RA
Definition:
RV64IMACFD.h:19
RV64IMACFD::S6
etiss_uint64 S6
Definition:
RV64IMACFD.h:40
RV64IMACFD::S0
etiss_uint64 S0
Definition:
RV64IMACFD.h:26
RV64IMACFD::S4
etiss_uint64 S4
Definition:
RV64IMACFD.h:38
RV64IMACFD::T3
etiss_uint64 T3
Definition:
RV64IMACFD.h:46
RV64IMACFD::FCSR
etiss_uint64 FCSR
Definition:
RV64IMACFD.h:56
RV64IMACFD::S7
etiss_uint64 S7
Definition:
RV64IMACFD.h:41
RV64IMACFD::SP
etiss_uint64 SP
Definition:
RV64IMACFD.h:20
RV64IMACFD::A7
etiss_uint64 A7
Definition:
RV64IMACFD.h:35
RV64IMACFD::X
etiss_uint64 * X[32]
Definition:
RV64IMACFD.h:50
RV64IMACFD::S3
etiss_uint64 S3
Definition:
RV64IMACFD.h:37
RV64IMACFD::A0
etiss_uint64 A0
Definition:
RV64IMACFD.h:28
RV64IMACFD::T6
etiss_uint64 T6
Definition:
RV64IMACFD.h:49
RV64IMACFD::ZERO
etiss_uint64 ZERO
Definition:
RV64IMACFD.h:18
RV64IMACFD::RES
etiss_uint8 RES[8]
Definition:
RV64IMACFD.h:53
RV64IMACFD::TP
etiss_uint64 TP
Definition:
RV64IMACFD.h:22
RV64IMACFD::T0
etiss_uint64 T0
Definition:
RV64IMACFD.h:23
RV64IMACFD::A3
etiss_uint64 A3
Definition:
RV64IMACFD.h:31
RV64IMACFD::S5
etiss_uint64 S5
Definition:
RV64IMACFD.h:39
RV64IMACFD::F
etiss_uint64 F[32]
Definition:
RV64IMACFD.h:62
RV64IMACFD::A2
etiss_uint64 A2
Definition:
RV64IMACFD.h:30
RV64IMACFD::T5
etiss_uint64 T5
Definition:
RV64IMACFD.h:48
RV64IMACFD::GP
etiss_uint64 GP
Definition:
RV64IMACFD.h:21
RV64IMACFD::MSTATUS
etiss_uint64 MSTATUS
Definition:
RV64IMACFD.h:57
RV64IMACFD::A4
etiss_uint64 A4
Definition:
RV64IMACFD.h:32
RV64IMACFD::S9
etiss_uint64 S9
Definition:
RV64IMACFD.h:43
RV64IMACFD::S11
etiss_uint64 S11
Definition:
RV64IMACFD.h:45
RV64IMACFD::T4
etiss_uint64 T4
Definition:
RV64IMACFD.h:47
RV64IMACFD::DPC
etiss_uint64 DPC
Definition:
RV64IMACFD.h:55
Generated on Thu Oct 24 2024 09:39:43 for ETISS 0.8.0 by
1.9.1