+2015-10-23 Ilya Enkovich <enkovich.gnu@gmail.com>
+
+ * tree-vect-generic.c (expand_vector_operations_1): Check
+ optab exists before use it.
+
2015-10-23 Ilya Enkovich <enkovich.gnu@gmail.com>
* tree-vect-generic.c (expand_vector_condition): Avoid
+2015-10-23 Ilya Enkovich <enkovich.gnu@gmail.com>
+
+ * g++.dg/pr68062.C: New test.
+
2015-10-23 Jeff Law <law@redhat.com>
PR tree-optimization/67830
--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-funsigned-char" } */
+
+typedef char __attribute__ ((vector_size (4))) v4qi;
+typedef unsigned char __attribute__ ((vector_size (4))) uv4qi;
+
+v4qi v;
+void ret(char a)
+{
+ v4qi c={a,a,a,a};
+ uv4qi d={a,a,a,a};
+ v = (c!=d);
+}
&& TYPE_MODE (TREE_TYPE (type)) == TYPE_MODE (TREE_TYPE (srhs1)))
{
op = optab_for_tree_code (code, TREE_TYPE (type), optab_scalar);
- if (optab_handler (op, TYPE_MODE (TREE_TYPE (type))) != CODE_FOR_nothing)
+ if (op != unknown_optab
+ && optab_handler (op, TYPE_MODE (TREE_TYPE (type))) != CODE_FOR_nothing)
{
tree slhs = make_ssa_name (TREE_TYPE (srhs1));
gimple *repl = gimple_build_assign (slhs, code, srhs1, srhs2);