- add a cast to suppress DEL_ARR_F() warnings when compiled with MSVC
[libfirm] / include / libfirm / irdom.h
index 2c6e103..c68c0e4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * 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.
  *
@@ -132,12 +132,24 @@ ir_node *get_Block_dominated_next(const ir_node *dom);
 
 /**
  * Check, if a block dominates another block.
- * @param a The first block.
- * @param b The second block.
+ *
+ * @param a   The potential dominator block.
+ * @param b   The potentially dominated block.
+ *
  * @return 1, if @p a dominates @p b, else 0.
  */
 int block_dominates(const ir_node *a, const ir_node *b);
 
+/**
+ * Check, if a block strictly dominates another block, i.e. a != b.
+ *
+ * @param a The potential dominator block.
+ * @param b The potentially dominated block.
+ *
+ * @return 1, if @p a strictly dominates @p b, else 0.
+ */
+int block_strictly_dominates(const ir_node *a, const ir_node *b);
+
 /**
  * Returns the smallest common dominator block of two nodes.
  * @param a A node.
@@ -162,12 +174,24 @@ ir_node *node_users_smallest_common_dominator(ir_node *irn, int handle_phi);
 
 /**
  * Check, if a block post dominates another block.
- * @param a The first block.
- * @param b The second block.
+ *
+ * @param a The potential post dominator block.
+ * @param b The potentially post dominated block.
+ *
  * @return 1, if @p a post dominates @p b, else 0.
  */
 int block_postdominates(const ir_node *a, const ir_node *b);
 
+/**
+ * Check, if a block strictly post dominates another block, i.e. a != b.
+ *
+ * @param a The potential post dominator block.
+ * @param b The potentially post dominated block.
+ *
+ * @return 1, if @p a strictly post dominates @p b, else 0.
+ */
+int block_strictly_postdominates(const ir_node *a, const ir_node *b);
+
 /**
  * Visit all nodes in the dominator subtree of a given node.
  * Call a pre-visitor before descending to the children and call a
@@ -231,7 +255,7 @@ void postdom_tree_walk_irg(ir_graph *irg, irg_walk_func *pre,
  */
 void compute_doms(ir_graph *irg);
 
-/** Computes the dominator trees on demand */
+/** Computes the dominator trees on demand, @see compute_doms(). */
 void assure_doms(ir_graph *irg);
 
 /** Computes the post dominator trees.