+static INLINE op_pin_state _get_op_pinned(const ir_op *op) {
+ return op->pin_state;
+}
+
+static INLINE void _set_generic_function_ptr(ir_op *op, op_func func) {
+ op->ops.generic = func;
+}
+
+static INLINE op_func _get_generic_function_ptr(const ir_op *op) {
+ return op->ops.generic;
+}
+
+static INLINE const ir_op_ops *_get_op_ops(const ir_op *op) {
+ return &op->ops;
+}
+
+static INLINE void _set_op_tag(ir_op *op, unsigned tag) {
+ op->tag = tag;
+}
+
+static INLINE unsigned _get_op_tag(const ir_op *op) {
+ return op->tag;
+}
+
+static INLINE void _set_op_attr(ir_op *op, void *attr) {
+ op->attr = attr;
+}
+
+static INLINE void *_get_op_attr(const ir_op *op) {
+ return op->attr;
+}
+
+#define get_op_code(op) _get_op_code(op)
+#define get_op_ident(op) _get_op_ident(op)
+#define get_op_pinned(op) _get_op_pinned(op)
+#define get_op_ops(op) _get_op_ops(op)
+#define set_op_tag(op, tag) _set_op_tag((op), (tag))
+#define get_op_tag(op) _get_op_tag(op)
+#define set_op_attr(op, attr) _set_op_attr((op), (attr))
+#define get_op_attr(op) _get_op_attr(op)
+
+#endif