some workaround to avoid condeval creating Phibs which not all backends like
[libfirm] / ir / ana / irextbb_t.h
index 926ed85..4c576f7 100644 (file)
@@ -20,7 +20,6 @@
 #ifndef _IREXTBB_T_H_
 #define _IREXTBB_T_H_
 
-#include "firm_config.h"
 #include "irgraph_t.h"
 #include "irextbb.h"
 #include "irtools.h"
@@ -35,6 +34,14 @@ struct _ir_extblk {
   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);
+}
 
 /**
  * Gets the visited counter of an extended block.
@@ -63,7 +70,7 @@ _set_extbb_visited(ir_extblk *blk, unsigned long visited) {
 static INLINE void
 _mark_extbb_visited(ir_extblk *blk) {
   assert(blk);
-  blk->visited = current_ir_graph->visited;
+  blk->visited = current_ir_graph->block_visited;
 }
 
 /**
@@ -73,7 +80,7 @@ _mark_extbb_visited(ir_extblk *blk) {
 static INLINE int
 _extbb_visited(const ir_extblk *blk) {
   assert(blk);
-  return blk->visited >= current_ir_graph->visited;
+  return blk->visited >= current_ir_graph->block_visited;
 }
 
 /**
@@ -83,7 +90,7 @@ _extbb_visited(const ir_extblk *blk) {
 static INLINE int
 _extbb_not_visited(const ir_extblk *blk) {
   assert(blk);
-  return blk->visited < current_ir_graph->visited;
+  return blk->visited < current_ir_graph->block_visited;
 }
 
 /**
@@ -134,9 +141,10 @@ _get_extbb_leader(ir_extblk *blk)
   return blk->blks[0];
 }
 
-#define get_extbb_visited(blk)         _get_extbb_visited(blk)
-#define set_extbb_visited(blk, v)      _set_extbb_visited(blk, v)
-#define mark_extbb_visited(blk)          _mark_extbb_visited(blk)
+#define is_ir_extbb(thing)        _is_ir_extbb(thing)
+#define get_extbb_visited(blk)    _get_extbb_visited(blk)
+#define set_extbb_visited(blk, v) _set_extbb_visited(blk, v)
+#define mark_extbb_visited(blk)   _mark_extbb_visited(blk)
 #define extbb_visited(blk)        _extbb_visited(blk)
 #define extbb_not_visited(blk)    _extbb_not_visited(blk)
 #define get_extbb_link(blk)       _get_extbb_link(blk)