* config/c4x/c4x.c (c4x_address_cost): Return cost of 1 for
REG+REG addressing if strength reduction enabled.
From-SVN: r25086
+Tue Feb 9 10:46:42 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_address_cost): Return cost of 1 for
+ REG+REG addressing if strength reduction enabled.
+
Tue Feb 9 10:10:31 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* config/c4x/t-c4x (LIBGCC2_CFLAGS): Delete.
break;
case REG:
+ /* Paradoxically, if we want autoincrement addressing for
+ complex arithmetic and structure arrays, we must give
+ REG+REG addressing the same cost as REG addressing to
+ prevent CSE from avoiding REG+REG addresses. This is
+ because GIV combination in loop.c is suboptimal and
+ needs fixing. */
+ if (flag_strength_reduce)
+ return 1;
return 2;
case CONST_INT: