ETISS 0.8.0
Extendable Translating Instruction Set Simulator (version 0.8.0)
etiss
include
etiss
fpu
386-GCC.h
Go to the documentation of this file.
1
54
#include "etiss/jit/types.h"
55
56
/*----------------------------------------------------------------------------
57
| One of the macros `BIGENDIAN' or `LITTLEENDIAN' must be defined.
58
*----------------------------------------------------------------------------*/
59
#define LITTLEENDIAN
60
61
/*----------------------------------------------------------------------------
62
| The macro `BITS64' can be defined to indicate that 64-bit integer types are
63
| supported by the compiler.
64
*----------------------------------------------------------------------------*/
65
#define BITS64
66
67
/*----------------------------------------------------------------------------
68
| Each of the following `typedef's defines the most convenient type that holds
69
| integers of at least as many bits as specified. For example, `uint8' should
70
| be the most convenient type that can hold unsigned integers of as many as
71
| 8 bits. The `flag' type must be able to hold either a 0 or 1. For most
72
| implementations of C, `flag', `uint8', and `int8' should all be `typedef'ed
73
| to the same as `int'.
74
*----------------------------------------------------------------------------*/
75
typedef
char
flag
;
76
typedef
etiss_uint8
uint8
;
77
typedef
etiss_int8
int8
;
78
typedef
etiss_uint16
uint16
;
79
typedef
etiss_int16
int16
;
80
typedef
etiss_uint32
uint32
;
81
typedef
etiss_int32
int32
;
82
typedef
etiss_uint64
uint64
;
83
typedef
etiss_int64
int64
;
84
85
/*----------------------------------------------------------------------------
86
| Each of the following `typedef's defines a type that holds integers
87
| of _exactly_ the number of bits specified. For instance, for most
88
| implementation of C, `bits16' and `sbits16' should be `typedef'ed to
89
| `unsigned short int' and `signed short int' (or `short int'), respectively.
90
*----------------------------------------------------------------------------*/
91
typedef
etiss_uint8
bits8
;
92
typedef
etiss_int8
sbits8
;
93
typedef
etiss_uint16
bits16
;
94
typedef
etiss_int16
sbits16
;
95
typedef
etiss_uint32
bits32
;
96
typedef
etiss_int32
sbits32
;
97
typedef
etiss_uint64
bits64
;
98
typedef
etiss_int64
sbits64
;
99
100
#define LIT64(a) a##LL
101
102
/*----------------------------------------------------------------------------
103
| The macro `INLINE' can be used before functions that should be inlined. If
104
| a compiler does not support explicit inlining, this macro should be defined
105
| to be `static'.
106
*----------------------------------------------------------------------------*/
107
#define INLINE extern inline
sbits64
etiss_int64 sbits64
Definition:
386-GCC.h:98
sbits16
etiss_int16 sbits16
Definition:
386-GCC.h:94
uint8
etiss_uint8 uint8
Definition:
386-GCC.h:76
bits8
etiss_uint8 bits8
Definition:
386-GCC.h:91
bits32
etiss_uint32 bits32
Definition:
386-GCC.h:95
int32
etiss_int32 int32
Definition:
386-GCC.h:81
int64
etiss_int64 int64
Definition:
386-GCC.h:83
sbits32
etiss_int32 sbits32
Definition:
386-GCC.h:96
int8
etiss_int8 int8
Definition:
386-GCC.h:77
uint32
etiss_uint32 uint32
Definition:
386-GCC.h:80
flag
char flag
Definition:
386-GCC.h:75
int16
etiss_int16 int16
Definition:
386-GCC.h:79
uint16
etiss_uint16 uint16
Definition:
386-GCC.h:78
bits16
etiss_uint16 bits16
Definition:
386-GCC.h:93
bits64
etiss_uint64 bits64
Definition:
386-GCC.h:97
uint64
etiss_uint64 uint64
Definition:
386-GCC.h:82
sbits8
etiss_int8 sbits8
Definition:
386-GCC.h:92
etiss_int16
int16_t etiss_int16
Definition:
types.h:89
etiss_uint64
uint64_t etiss_uint64
Definition:
types.h:96
etiss_uint32
uint32_t etiss_uint32
Definition:
types.h:93
etiss_int64
int64_t etiss_int64
Definition:
types.h:95
etiss_int8
int8_t etiss_int8
Definition:
types.h:86
etiss_uint8
uint8_t etiss_uint8
Definition:
types.h:87
etiss_int32
int32_t etiss_int32
Definition:
types.h:92
etiss_uint16
uint16_t etiss_uint16
Definition:
types.h:90
Generated on Thu Oct 24 2024 09:40:11 for ETISS 0.8.0 by
1.9.1