fixed copy insertion
authorChristian Würdig <chriswue@ipd.info.uni-karlsruhe.de>
Tue, 11 Apr 2006 13:47:50 +0000 (13:47 +0000)
committerChristian Würdig <chriswue@ipd.info.uni-karlsruhe.de>
Tue, 11 Apr 2006 13:47:50 +0000 (13:47 +0000)
ir/be/ia32/bearch_ia32.c

index 1d6938c..aece39a 100644 (file)
@@ -534,7 +534,9 @@ static void ia32_finish_node(ir_node *irn, void *env) {
                block = get_nodes_block(irn);
 
                /* check all OUT requirements, if there is a should_be_same */
-               if (op_tp == ia32_Normal && ! is_ia32_Lea(irn) && ! is_ia32_Conv_I2I(irn) && ! is_ia32_Conv_I2I8Bit(irn)) {
+               if ((op_tp == ia32_Normal || op_tp == ia32_AddrModeS) &&
+                       ! is_ia32_Lea(irn) && ! is_ia32_Conv_I2I(irn) && ! is_ia32_Conv_I2I8Bit(irn))
+               {
                        for (i = 0; i < n_res; i++) {
                                if (arch_register_req_is(&(reqs[i]->req), should_be_same)) {
                                        /* get in and out register */