174 #endif // OTAWA_TYPE_H
static const Type & _(void)
Definition: type.h:146
static const BaseType float32_type
Definition: type.h:94
static const Type & _(void)
Definition: type.h:156
static const BaseType uint16_type
Definition: type.h:89
Null value for types.
Definition: type.h:117
static const Type & _(void)
Definition: type.h:160
static const BaseType bool_type
Definition: type.h:84
Definition: ClpValue.h:54
static const Type & _(void)
Definition: type.h:148
static const BaseType uint8_type
Definition: type.h:87
static const Type & _(void)
Definition: type.h:157
NoType(void)
Definition: type.h:119
static const BaseType cstring_type
Definition: type.h:98
bool operator!=(const Type &type) const
Definition: type.h:112
static const Type & _(void)
Definition: type.h:152
elm::io::Output & operator<<(elm::io::Output &out, Address addr)
Definition: base.cpp:188
static const BaseType string_type
Definition: type.h:99
static const BaseType int32_type
Definition: type.h:90
base_t bknd
Definition: type.h:130
ENUM(otawa::hard::Cache::replace_policy_t)
Inst::kind_t kind
Definition: odisasm.cpp:106
static const BaseType addr32_type
Definition: type.h:97
static const Type & _(void)
Definition: type.h:158
virtual Type::kind_t kind(void) const
Get the kind of the type.
Definition: type.h:136
static const BaseType block_type
Definition: type.h:83
Identifier< FunAST * > FUN
A property with this identifier is put on each instruction, start of an AST function.
kind_t
Allowed types for values: NONE represents nothing; REG is only used for addresses, and represents a register; VAL represents some values (either a constant or an interval); ALL is the Top element.
Definition: ClpValue.h:53
base_t base(void) const
Get the base type kind.
Definition: type.h:133
static const Type & _(void)
Definition: type.h:154
static const Type & _(void)
Definition: type.h:145
static const Type & _(void)
Definition: type.h:149
static const Type & _(void)
Definition: type.h:159
bool equals(const Type &type) const
Definition: type.h:105
virtual const BaseType * toBase(void) const
If the type is a base type, return it.
Definition: type.h:137
virtual const BaseType * toBase(void) const
If the type is a base type, return it.
Definition: type.h:107
static const Type & _(void)
Definition: type.h:147
static const BaseType int16_type
Definition: type.h:88
virtual void print(elm::io::Output &output) const
Print a text representation of the type.
Definition: type.cpp:133
static const Type & _(void)
Definition: type.h:150
sys::SystemOutStream & out
static const Type & _(void)
Definition: type.h:144
static const BaseType uint64_type
Definition: type.h:93
This class provides a representation for the base type.
Definition: type.h:128
Definition: ParExeGraph.h:52
static const Type & _(void)
Definition: type.h:153
virtual ~Type(void)
Definition: type.h:41
static const BaseType float128_type
Definition: type.h:96
static const BaseType void_type
Definition: type.h:82
static const NoType no_type
Definition: type.h:81
static const BaseType uint32_type
Definition: type.h:91
bool operator==(const Type &type) const
Definition: type.h:111
static const Type & _(void)
Definition: type.h:151
static const BaseType float64_type
Definition: type.h:95
BaseType(base_t base_kind)
Definition: type.h:131
static const BaseType char_type
Definition: type.h:85
static const Type & _(void)
Definition: type.h:155
static const BaseType int64_type
Definition: type.h:92
const Type & type(void)
Definition: type.h:163
This class describes the type of the data in the program.
Definition: type.h:39
static const Type & _(void)
Definition: type.h:142
kind_t
Definition: type.h:46
void print(Output &out, const T &v)
Definition: Identifier.h:44
static const Type & _(void)
Definition: type.h:161
base_t
Definition: type.h:58
static const BaseType int8_type
Definition: type.h:86