Fixed 'inline' lossage --flo
[libfirm] / ir / ir / irnode_t.h
index f8c9c0d..fa24090 100644 (file)
@@ -32,6 +32,7 @@
 # include "firm_common_t.h"
 # include "irdom_t.h" /* For size of struct dom_info. */
 # include "dbginfo.h"
+# include "irloop.h"
 
 # include "exc.h"
 
@@ -209,6 +210,9 @@ struct ir_node {
   int node_nr;             /**< a unique node number for each node to make output
                              readable. */
 #endif
+  /* ------- For analyses -------- */
+  ir_loop *loop;           /**< the loop the node is in. Access routines in irloop.h */
+  /* ------- Opcode depending fields -------- */
   attr attr;               /**< attribute of this node. Depends on opcode.
                               Must be last field of struct ir_node. */
 };
@@ -216,7 +220,7 @@ struct ir_node {
 /** Copies all attributes stored in the old node  to the new node.
     Assumes both have the same opcode and sufficient size. */
 void
-copy_attrs (ir_node *old, ir_node *new);
+copy_attrs(const ir_node *old_node, ir_node *new_node);
 
 
 /** Returns the array with the ins.  The content of the array may not be
@@ -231,6 +235,7 @@ INLINE alloc_attr    get_irn_alloc_attr    (ir_node *node);
 INLINE type         *get_irn_free_attr     (ir_node *node);
 INLINE symconst_attr get_irn_symconst_attr (ir_node *node);
 type         *get_irn_call_attr     (ir_node *node);
+type         *get_irn_funccall_attr (ir_node *node);
 sel_attr      get_irn_sel_attr      (ir_node *node);
 int           get_irn_phi_attr      (ir_node *node);
 block_attr    get_irn_block_attr   (ir_node *node);