Psi op added
authorMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Thu, 23 Mar 2006 12:17:52 +0000 (12:17 +0000)
committerMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Thu, 23 Mar 2006 12:17:52 +0000 (12:17 +0000)
[r7507]

ir/ir/irop.c
ir/ir/irop.h

index ea0bdaa..7241d5e 100644 (file)
@@ -93,6 +93,7 @@ ir_op *op_EndExcept;   ir_op *get_op_EndExcept (void) { return op_EndExcept; }
 
 ir_op *op_NoMem;       ir_op *get_op_NoMem     (void) { return op_NoMem;     }
 ir_op *op_Mux;         ir_op *get_op_Mux       (void) { return op_Mux;       }
+ir_op *op_Psi;         ir_op *get_op_Psi       (void) { return op_Psi;       }
 ir_op *op_CopyB;       ir_op *get_op_CopyB     (void) { return op_CopyB;     }
 
 ir_op *op_Raise;       ir_op *get_op_Raise     (void) { return op_Raise;     }
@@ -273,6 +274,7 @@ init_op(void)
 
   op_NoMem     = new_ir_op(iro_NoMem,     "NoMem",     op_pin_state_pinned, N,       oparity_zero,     -1, 0, NULL);
   op_Mux       = new_ir_op(iro_Mux,       "Mux",       op_pin_state_floats, N,       oparity_trinary,  -1, 0, NULL);
+  op_Psi       = new_ir_op(iro_Psi,       "Psi",       op_pin_state_floats, N,       oparity_variable, -1, 0, NULL);
   op_CopyB     = new_ir_op(iro_CopyB,     "CopyB",     op_pin_state_mem_pinned, F|H, oparity_trinary,  -1, sizeof(copyb_attr), NULL);
 
   op_InstOf    = new_ir_op(iro_InstOf,    "InstOf",    op_pin_state_mem_pinned, H,   oparity_unary,    -1, sizeof(io_attr), NULL);
@@ -350,6 +352,7 @@ void finish_op(void) {
   free_ir_op (op_EndExcept); op_EndExcept = NULL;
 
   free_ir_op (op_NoMem    ); op_NoMem     = NULL;
+  free_ir_op (op_Psi      ); op_Psi       = NULL;
   free_ir_op (op_Mux      ); op_Mux       = NULL;
   free_ir_op (op_CopyB    ); op_CopyB     = NULL;
 
index 87672d0..f2c42c9 100644 (file)
@@ -76,7 +76,7 @@ typedef enum {
   iro_Load, iro_Store, iro_Alloc, iro_Free, iro_Sync,
   iro_Proj, iro_Tuple, iro_Id, iro_Bad, iro_Confirm,
   iro_Unknown, iro_Filter, iro_Break, iro_CallBegin, iro_EndReg, iro_EndExcept,
-  iro_NoMem, iro_Mux, iro_CopyB,
+  iro_NoMem, iro_Mux, iro_Psi, iro_CopyB,
   iro_InstOf, iro_Raise, iro_Bound,
   iro_MaxOpcode
 } opcode;
@@ -144,6 +144,7 @@ extern ir_op *op_EndExcept;       ir_op *get_op_EndExcept (void);
 
 extern ir_op *op_NoMem;           ir_op *get_op_NoMem     (void);
 extern ir_op *op_Mux;             ir_op *get_op_Mux       (void);
+extern ir_op *op_Psi;             ir_op *get_op_Psi       (void);
 extern ir_op *op_CopyB;           ir_op *get_op_CopyB     (void);
 
 extern ir_op *op_InstOf;          ir_op *get_op_InstOf    (void);