+ res = new_ir_node (db, irg, block, op_Sync, mode_M, arity, in);
+
+ res = optimize_node (res);
+ irn_vrfy_irg (res, irg);
+ return res;
+}
+
+INLINE ir_node *
+new_rd_Bad (ir_graph *irg)
+{
+ return irg->bad;
+}
+
+INLINE ir_node *
+new_rd_Confirm (dbg_info *db, ir_graph *irg, ir_node *block, ir_node *val, ir_node *bound, pn_Cmp cmp)
+{
+ ir_node *in[2], *res;
+ in[0] = val;
+ in[1] = bound;
+
+ res = new_ir_node (db, irg, block, op_Confirm, get_irn_mode(val), 2, in);
+
+ res->attr.confirm_cmp = cmp;
+
+ res = optimize_node (res);
+ irn_vrfy_irg(res, irg);
+ return res;
+}
+
+INLINE ir_node *
+new_rd_Unknown (ir_graph *irg, ir_mode *m)
+{
+ return new_ir_node (NULL, irg, irg->start_block, op_Unknown, m, 0, NULL);
+}
+
+INLINE ir_node *
+new_rd_CallBegin (dbg_info *db, ir_graph *irg, ir_node *block, ir_node *call)
+{
+ ir_node *in[1];
+ ir_node *res;
+ in[0] = get_Call_ptr(call);
+ res = new_ir_node (db, irg, block, op_CallBegin, mode_T, 1, in);
+ //res->attr.callbegin.irg = irg;
+ res->attr.callbegin.call = call;
+ res = optimize_node (res);
+ irn_vrfy_irg (res, irg);
+ return res;
+}
+
+INLINE ir_node *
+new_rd_EndReg (dbg_info *db, ir_graph *irg, ir_node *block)
+{
+ ir_node *res;
+
+ res = new_ir_node (db, irg, block, op_EndReg, mode_T, -1, NULL);
+ //res->attr.end.irg = irg;