op_arity opar; /**< The arity of operator. */
int op_index; /**< The index of the first data operand, 0 for most cases, 1 for Div etc. */
unsigned flags; /**< Flags describing the behavior of the ir_op, a bitmasks of irop_flags. */
- void *tag; /**< Some custom pointer the op's creator can attach stuff to. */
+ unsigned tag; /**< Some custom TAG value the op's creator set to. */
void *attr; /**< custom pointer where op's creator can attach attribute stuff to. */
ir_op_ops ops; /**< The operations of the this op. */
unsigned is_dead:1; /**< If set, the block is dead (and could be replace by a Bad. */
unsigned is_mb_head:1; /**< Set if this block is a macroblock head. */
unsigned has_label:1; /**< Set if this block has a label assigned. */
+ unsigned marked:1; /**< Can be set/unset to temporary mark a block. */
ir_node **graph_arr; /**< An array to store all parameters. */
/* Attributes holding analyses information */
ir_dom_info dom; /**< Datastructure that holds information about dominators.
unsigned using_irn_visited : 1; /**< set to 1 if we are currently using the visited flag */
unsigned using_block_visited : 1; /**< set to 1 if we are currently using the block_visited flag */
unsigned using_irn_link : 1; /**< set to 1 if we are currently using the irn_link fields */
+ unsigned using_block_mark : 1; /**< set to 1 if we are currently using the block mark flags */
#endif
};