+2010-11-19 Michael Matz <matz@suse.de>
+
+ PR tree-optimization/46077
+ * tree-chrec.c (eq_evolutions_p): Accept some expressions.
+
2010-11-19 Anatoly Sokolov <aesok@post.ru>
* config/mn10300/mn10300.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
+2010-11-19 Michael Matz <matz@suse.de>
+
+ PR tree-optimization/46077
+ * gcc.dg/vect/O3-pr46077.c: New testcase.
+
2010-11-19 Joseph Myers <joseph@codesourcery.com>
PR c/46547
--- /dev/null
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+
+void intf_pcmPlayEffect(int *src, int *dst, int size) {
+ int i;
+ for (i = 0; i < size; i++)
+ *dst++ = *src & 0x80 ? (*src++ & 0x7f) : -*src++;
+}
+
+/* { dg-final { cleanup-tree-dump "vect" } } */
return (CHREC_VARIABLE (chrec0) == CHREC_VARIABLE (chrec1)
&& eq_evolutions_p (CHREC_LEFT (chrec0), CHREC_LEFT (chrec1))
&& eq_evolutions_p (CHREC_RIGHT (chrec0), CHREC_RIGHT (chrec1)));
+
+ case PLUS_EXPR:
+ case MULT_EXPR:
+ case MINUS_EXPR:
+ case POINTER_PLUS_EXPR:
+ return eq_evolutions_p (TREE_OPERAND (chrec0, 0),
+ TREE_OPERAND (chrec1, 0))
+ && eq_evolutions_p (TREE_OPERAND (chrec0, 1),
+ TREE_OPERAND (chrec1, 1));
+
default:
return false;
}