get_irg_extblk_state() and set_irg_extblk_inconsistant() added
authorMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Mon, 20 Mar 2006 07:11:04 +0000 (07:11 +0000)
committerMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Mon, 20 Mar 2006 07:11:04 +0000 (07:11 +0000)
[r7481]

ir/ir/irgraph.h
ir/ir/irgraph_t.h

index bb612fd..4ca81b4 100644 (file)
@@ -317,6 +317,15 @@ typedef enum {
 irg_outs_state get_irg_outs_state(const ir_graph *irg);
 void           set_irg_outs_inconsistent(ir_graph *irg);
 
+/** 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;
+irg_extblk_state get_irg_extblk_state(const ir_graph *irg);
+void             set_irg_extblk_inconsistent(ir_graph *irg);
+
 /** state: dom_state
  * Signals the state of the dominator / post dominator information.
  */
index 6cc7bf6..d96bc2c 100644 (file)
@@ -392,6 +392,17 @@ _set_irg_outs_inconsistent(ir_graph *irg) {
     irg->outs_state = outs_inconsistent;
 }
 
+static INLINE irg_extblk_state
+_get_irg_extblk_state(const ir_graph *irg) {
+  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;
+}
+
 static INLINE irg_dom_state
 _get_irg_dom_state(const ir_graph *irg) {
   return irg->dom_state;
@@ -553,6 +564,8 @@ _get_irg_estimated_node_cnt(const ir_graph *irg) {
 #define get_irg_pinned(irg)                   _get_irg_pinned(irg)
 #define get_irg_outs_state(irg)               _get_irg_outs_state(irg)
 #define set_irg_outs_inconsistent(irg)        _set_irg_outs_inconsistent(irg)
+#define get_irg_extblk_state(irg)              _get_irg_extblk_state(irg)
+#define set_irg_extblk_inconsistent(irg)       _set_irg_extblk_inconsistent(irg)
 #define get_irg_dom_state(irg)                _get_irg_dom_state(irg)
 #define get_irg_postdom_state(irg)            _get_irg_postdom_state(irg)
 #define set_irg_doms_inconsistent(irg)        _set_irg_doms_inconsistent(irg)