2016-03-24 Richard Biener <rguenther@suse.de>
PR tree-optimization/70396
* tree-vect-stmts.c (vectorizable_comparison): Use
get_vectype_for_scalar_type.
* gcc.dg/torture/pr70396.c: New testcase.
From-SVN: r234455
+2016-03-24 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/70396
+ * tree-vect-stmts.c (vectorizable_comparison): Use
+ get_vectype_for_scalar_type.
+
2016-03-24 Richard Biener <rguenther@suse.de>
PR middle-end/70370
+2016-03-24 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/70396
+ * gcc.dg/torture/pr70396.c: New testcase.
+
2016-03-24 Richard Biener <rguenther@suse.de>
PR middle-end/70370
--- /dev/null
+/* { dg-do compile } */
+
+struct S2 {
+ signed f1 : 3;
+};
+int a[100];
+int b, c;
+char d;
+void fn1() {
+ struct S2 e;
+ b / e.f1;
+ c = 2;
+ for (; c < 100; c++) {
+ d = 0;
+ a[c] = ~e.f1 != d;
+ }
+}
/* Invariant comparison. */
if (!vectype)
{
- vectype = build_vector_type (TREE_TYPE (rhs1), nunits);
- if (tree_to_shwi (TYPE_SIZE_UNIT (vectype)) != current_vector_size)
+ vectype = get_vectype_for_scalar_type (TREE_TYPE (rhs1));
+ if (TYPE_VECTOR_SUBPARTS (vectype) != nunits)
return false;
}
else if (nunits != TYPE_VECTOR_SUBPARTS (vectype))