-/* copies the ia32 attributes */
-static void ia32_copy_attr(const ir_node *old_node, ir_node *new_node) {
- ia32_attr_t *attr_old = get_ia32_attr(old_node);
- ia32_attr_t *attr_new = get_ia32_attr(new_node);
- int n_res = get_ia32_n_res(old_node);
-
- /* copy the attributes */
- memcpy(attr_new, attr_old, sizeof(*attr_new));
-
- /* copy the register slots */
- attr_new->slots = (const arch_register_t **)NEW_ARR_D(arch_register_t*, get_irg_obstack(get_irn_irg(new_node)), n_res);
- memcpy((void *)attr_new->slots, (void *)attr_old->slots, sizeof(attr_new->slots[0]) * n_res);
-}
-
-/**
- * Registers the ia32_copy_attr function for all ia32 opcodes.
- */
-void ia32_register_copy_attr_func(void) {
- unsigned i, f = get_ia32_opcode_first(), l = get_ia32_opcode_last();
-
- for (i = f; i < l; i++) {
- ir_op *op = get_irp_opcode(i);
- op->ops.copy_attr = ia32_copy_attr;
- }
-}
-