is_irn_always_opt() added
[libfirm] / ir / ir / irnode.h
index fd1b3d6..69c3d51 100644 (file)
@@ -3,7 +3,7 @@
  * File name:   ir/ir/irnode.h
  * Purpose:     Representation of an intermediate operation.
  * Author:      Martin Trapp, Christian Schaefer
- * Modified by: Goetz Lindenmaier
+ * Modified by: Goetz Lindenmaier, Michael Beck
  * Created:
  * CVS-ID:      $Id$
  * Copyright:   (c) 1998-2003 Universität Karlsruhe
@@ -767,6 +767,8 @@ void     set_Rot_right (ir_node *node, ir_node *right);
 
 ir_node *get_Conv_op (ir_node *node);
 void     set_Conv_op (ir_node *node, ir_node *op);
+int      get_Conv_strict (ir_node *node);
+void     set_Conv_strict (ir_node *node, int flag);
 
 /* Does Cast need a mem operator?
  * Cast should only depend on the type, not on the state of an
@@ -1122,6 +1124,12 @@ entity *get_irn_entity_attr(ir_node *n);
 /** Returns non-zero for constant-like nodes. */
 int is_irn_constlike(const ir_node *node);
 
+/**
+ * Returns non-zero for nodes that must be always optimized
+ * (Phi, Id. Proj, Cond, Block, Confirm ...).
+ */
+int is_irn_always_opt(const ir_node *node);
+
 /**
  * Returns non-zero for nodes that are allowed to have keep-alives and
  * are neither Block nor PhiM.