/*
- * Copyrigth (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.
*
* An extended block.
*/
struct _ir_extblk {
- firm_kind kind; /**< k_ir_extblk */
- unsigned long visited; /**< visited flag */
- ir_node **blks; /**< blocks belonging to this extended block */
- void *link; /**< private link field */
+ firm_kind kind; /**< k_ir_extblk */
+ ir_visited_t visited; /**< visited flag */
+ ir_node **blks; /**< blocks belonging to this extended block */
+ void *link; /**< private link field */
};
/**
* Checks whether a pointer points to a extended basic block.
* Intern version for libFirm.
*/
-static INLINE int
-_is_ir_extbb (const void *thing) {
- return (get_kind(thing) == k_ir_extblk);
+static inline int
+_is_ir_extbb(const void *thing) {
+ return (get_kind(thing) == k_ir_extblk);
}
/**
* Gets the visited counter of an extended block.
* Internal version for libFirm.
*/
-static INLINE unsigned long
+static inline ir_visited_t
_get_extbb_visited(const ir_extblk *blk) {
- assert(blk);
- return blk->visited;
+ assert(blk);
+ return blk->visited;
}
/**
* Sets the visited counter of an extended block.
* Internal version for libFirm.
*/
-static INLINE void
-_set_extbb_visited(ir_extblk *blk, unsigned long visited) {
- assert(blk);
- blk->visited = visited;
+static inline void
+_set_extbb_visited(ir_extblk *blk, ir_visited_t visited) {
+ assert(blk);
+ blk->visited = visited;
}
/**
* Mark an extended block as visited in a graph.
* Internal version for libFirm.
*/
-static INLINE void
+static inline void
_mark_extbb_visited(ir_extblk *blk) {
- assert(blk);
- blk->visited = current_ir_graph->block_visited;
+ assert(blk);
+ blk->visited = current_ir_graph->block_visited;
}
/**
* Returns non-zero if an extended was visited.
* Internal version for libFirm.
*/
-static INLINE int
+static inline int
_extbb_visited(const ir_extblk *blk) {
- assert(blk);
- return blk->visited >= current_ir_graph->block_visited;
+ assert(blk);
+ return blk->visited >= current_ir_graph->block_visited;
}
/**
* Returns non-zero if an extended block was NOT visited.
* Internal version for libFirm.
*/
-static INLINE int
+static inline int
_extbb_not_visited(const ir_extblk *blk) {
- assert(blk);
- return blk->visited < current_ir_graph->block_visited;
+ assert(blk);
+ return blk->visited < current_ir_graph->block_visited;
}
/**
* Returns the link field of an extended block.
* Internal version for libFirm.
*/
-static INLINE void *
+static inline void *
_get_extbb_link(const ir_extblk *blk) {
- assert(blk);
- return blk->link;
+ assert(blk);
+ return blk->link;
}
/**
* Sets the link field of an extended block.
* Internal version for libFirm.
*/
-static INLINE void
+static inline void
_set_extbb_link(ir_extblk *blk, void *link) {
- assert(blk);
- blk->link = link;
+ assert(blk);
+ blk->link = link;
}
/**
* Return the number of basis blocks of an extended block
*/
-static INLINE int
+static inline int
_get_extbb_n_blocks(const ir_extblk *blk) {
- assert(blk);
- return ARR_LEN(blk->blks);
+ assert(blk);
+ return ARR_LEN(blk->blks);
}
/**
* Return the i'th basis block of an extended block
*/
-static INLINE ir_node *
-_get_extbb_block(ir_extblk *blk, int pos)
+static inline ir_node *
+_get_extbb_block(const ir_extblk *blk, int pos)
{
- assert(blk && 0 <= pos && pos < _get_extbb_n_blocks(blk));
- return blk->blks[pos];
+ assert(blk && 0 <= pos && pos < _get_extbb_n_blocks(blk));
+ return blk->blks[pos];
}
/**
* Return the leader basis block of an extended block
*/
-static INLINE ir_node *
-_get_extbb_leader(ir_extblk *blk)
+static inline ir_node *
+_get_extbb_leader(const ir_extblk *blk)
{
- return blk->blks[0];
+ return blk->blks[0];
}
#define is_ir_extbb(thing) _is_ir_extbb(thing)