/*
- * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
static INLINE ir_mode *
_get_modeP_data(void) { return mode_P_data; }
-static INLINE modecode
+static INLINE ir_modecode
_get_mode_modecode(const ir_mode *mode) { return mode->code; }
static INLINE ident *
_get_mode_ident(const ir_mode *mode) { return mode->name; }
-static INLINE mode_sort
-_get_mode_sort(const ir_mode* mode) { return mode->sort; }
+static INLINE ir_mode_sort
+_get_mode_sort(const ir_mode *mode) { return mode->sort; }
-static INLINE int
+static INLINE unsigned
_get_mode_size_bits(const ir_mode *mode) { return mode->size; }
-static INLINE int
+static INLINE unsigned
_get_mode_size_bytes(const ir_mode *mode) {
- int size = _get_mode_size_bits(mode);
- if ((size & 7) != 0) return -1;
+ unsigned size = _get_mode_size_bits(mode);
+ if ((size & 7) != 0) return (unsigned) -1;
return size >> 3;
}
static INLINE int
_get_mode_sign(const ir_mode *mode) { return mode->sign; }
-static INLINE int
+static INLINE ir_mode_arithmetic
_get_mode_arithmetic(const ir_mode *mode) { return mode->arithmetic; }
static INLINE unsigned int
static INLINE void
_set_mode_link(ir_mode *mode, void *l) { mode->link = l; }
-/* Functions to check, whether a modecode is signed, float, int, num, data,
+/* Functions to check, whether a ir_modecode is signed, float, int, num, data,
datab or dataM. For more exact definitions read the corresponding pages
in the firm documentation or the following enumeration
return (_get_mode_sort(mode) == irms_int_number);
}
-static INLINE int
-_mode_is_character(const ir_mode *mode) {
- assert(mode);
- return (_get_mode_sort(mode) == irms_character);
-}
-
static INLINE int
_mode_is_reference(const ir_mode *mode) {
assert(mode);
return (_mode_is_int(mode) || _mode_is_float(mode));
}
-static INLINE int
-_mode_is_numP(const ir_mode *mode) {
- assert(mode);
- return (_mode_is_int(mode) || _mode_is_float(mode) || _mode_is_reference(mode));
-}
-
static INLINE int
_mode_is_data(const ir_mode *mode) {
- assert(mode);
- return (_mode_is_numP(mode) || _get_mode_sort(mode) == irms_character);
+ return (_mode_is_int(mode) || _mode_is_float(mode) || _mode_is_reference(mode));
}
static INLINE int
#define mode_is_signed(mode) _mode_is_signed(mode)
#define mode_is_float(mode) _mode_is_float(mode)
#define mode_is_int(mode) _mode_is_int(mode)
-#define mode_is_character(mode) _mode_is_character(mode)
#define mode_is_reference(mode) _mode_is_reference(mode)
#define mode_is_num(mode) _mode_is_num(mode)
-#define mode_is_numP(mode) _mode_is_numP(mode)
#define mode_is_data(mode) _mode_is_data(mode)
#define mode_is_datab(mode) _mode_is_datab(mode)
#define mode_is_dataM(mode) _mode_is_dataM(mode)