*** empty log message ***
[libfirm] / ir / ir / ircons.c
index 83746c4..d40aa8d 100644 (file)
@@ -15,7 +15,6 @@
 /* memset belongs to string.h */
 # include "string.h"
 
-
 /* irnode constructor                                             */
 /* create a new irnode in irg, with an op, mode, arity and        */
 /* some incoming irnodes                                          */
@@ -50,6 +49,43 @@ new_ir_node (ir_graph *irg, ir_node *block, ir_op *op, ir_mode *mode,
 /*********************************************** */
 /** privat interfaces, for professional use only */
 
+/*CS*/
+inline ir_node *
+new_r_Block (ir_graph *irg,  int arity, ir_node **in)
+{
+  ir_node *res;
+
+  res = new_ir_node (current_ir_graph, NULL, op_Block, mode_R, -1, NULL);
+
+  return res;
+
+}
+
+ir_node *
+new_r_Start (ir_graph *irg, ir_node *block)
+{
+  ir_node *res;
+
+  res = new_ir_node (irg, block, op_Start, mode_T, 0, NULL);
+
+  ir_vrfy (res);
+  return res;
+}
+
+
+ir_node *
+new_r_End (ir_graph *irg, ir_node *block)
+{
+  ir_node *res;
+
+  res = new_ir_node (irg, block, op_End, mode_X, -1, NULL);
+
+  ir_vrfy (res);
+  return res;
+
+}
+
+
 /* Creates a Phi node with 0 predecessors */
 inline ir_node *
 new_r_Phi0 (ir_graph *irg, ir_node *block, ir_mode *mode)
@@ -743,7 +779,8 @@ new_Block (void)
   res->attr.block.matured = 0;
   set_Block_block_visit(res, 0);
 
-  // res = optimize (res); /* GL: only optimize if mature!!!! */
+  /* forget this optimization. use this only if mature !!!!
+  res = optimize (res); */
   ir_vrfy (res);
 
   /** create a new dynamic array, which stores all parameters in irnodes */