#include "execfreq.h"
#include "begin.h"
-/** Flags for extended basic block state. */
-typedef enum {
- ir_extblk_info_none = 0, /**< No extended basic block information is constructed. Default. */
- ir_extblk_info_valid = 1, /**< Extended basic block information is valid. */
- ir_extblk_info_invalid = 2 /**< Extended basic block information is constructed but invalid. */
-} irg_extblk_info_state;
-
/* type of callback function for ir_graph walk */
#ifndef _EXTBB_WALK_FUNC_TYPEDEF_
#define _EXTBB_WALK_FUNC_TYPEDEF_
/** state: extended basic block state. */
typedef enum {
- extblk_none = 0, /**< No extended basic block information is constructed. Default. */
- extblk_valid = 1, /**< Extended basic block information is valid. */
- extblk_invalid = 2 /**< Extended basic block information is constructed but invalid. */
-} irg_extblk_state;
-FIRM_API irg_extblk_state get_irg_extblk_state(const ir_graph *irg);
+ ir_extblk_info_none = 0, /**< No extended basic block information is constructed. Default. */
+ ir_extblk_info_valid = 1, /**< Extended basic block information is valid. */
+ ir_extblk_info_invalid = 2 /**< Extended basic block information is constructed but invalid. */
+} irg_extblk_info_state;
+FIRM_API irg_extblk_info_state get_irg_extblk_state(const ir_graph *irg);
FIRM_API void set_irg_extblk_inconsistent(ir_graph *irg);
/** state: dom_state
*/
static inline bool rbitset_is_set(const unsigned *bitset, unsigned pos)
{
- return BITSET_ELEM(bitset, pos) & (1 << (pos % BITS_PER_ELEM));
+ return (BITSET_ELEM(bitset, pos) & (1 << (pos % BITS_PER_ELEM))) != 0;
}
/**
extbb->visited = 0;
}
- irg->extblk_state = extblk_valid;
+ irg->extblk_state = ir_extblk_info_valid;
}
/* free all extended block info. */
xfree(irg->extbb_obst);
irg->extbb_obst = NULL;
}
- irg->extblk_state = extblk_none;
+ irg->extblk_state = ir_extblk_info_none;
}
/* Return the extended block of a node. */
extbb->visited = 0;
}
- irg->extblk_state = extblk_valid;
+ irg->extblk_state = ir_extblk_info_valid;
}
int i;
ir_entity *ent = get_irg_entity(irg);
- if (get_irg_extblk_state(irg) != extblk_valid)
+ if (get_irg_extblk_state(irg) != ir_extblk_info_valid)
compute_extbb(irg);
construct_extblock_lists(irg);
_set_irg_outs_inconsistent(irg);
}
-irg_extblk_state (get_irg_extblk_state)(const ir_graph *irg)
+irg_extblk_info_state (get_irg_extblk_state)(const ir_graph *irg)
{
return _get_irg_extblk_state(irg);
}
irg->outs_state = outs_inconsistent;
}
-static inline irg_extblk_state _get_irg_extblk_state(const ir_graph *irg)
+static inline irg_extblk_info_state _get_irg_extblk_state(const ir_graph *irg)
{
- return irg->extblk_state;
+ return irg->extblk_state;
}
static inline void _set_irg_extblk_inconsistent(ir_graph *irg)
{
- if (irg->extblk_state == extblk_valid)
- irg->extblk_state = extblk_invalid;
+ if (irg->extblk_state == ir_extblk_info_valid)
+ irg->extblk_state = ir_extblk_info_invalid;
}
static inline irg_dom_state _get_irg_dom_state(const ir_graph *irg)