Commit 0d99886f by Andrew Pinski Committed by Andrew Pinski

re PR tree-optimization/69282 (aarch64/armhf ICE on SPEC2006 464.h264ref at -O3)

2016-02-09  Andrew Pinski  <apinski@cavium.com>

        PR tree-opt/69282
        * optabs-tree.c (expand_vec_cond_expr_p): Don't early return if
        get_vcond_mask_icode returns false.

2016-02-09  Andrew Pinski  <apinski@cavium.com>

        PR tree-opt/69282
        * gcc.c-torture/compile/20160205-1.c: New testcase.

From-SVN: r233261
parent de24ed78
2016-02-09 Andrew Pinski <apinski@cavium.com>
PR tree-opt/69282
* optabs-tree.c (expand_vec_cond_expr_p): Don't early return if
get_vcond_mask_icode returns false.
2016-02-09 Michael Meissner <meissner@linux.vnet.ibm.com> 2016-02-09 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/68404 PR target/68404
......
...@@ -322,9 +322,11 @@ expand_vec_cond_expr_p (tree value_type, tree cmp_op_type) ...@@ -322,9 +322,11 @@ expand_vec_cond_expr_p (tree value_type, tree cmp_op_type)
{ {
machine_mode value_mode = TYPE_MODE (value_type); machine_mode value_mode = TYPE_MODE (value_type);
machine_mode cmp_op_mode = TYPE_MODE (cmp_op_type); machine_mode cmp_op_mode = TYPE_MODE (cmp_op_type);
if (VECTOR_BOOLEAN_TYPE_P (cmp_op_type)) if (VECTOR_BOOLEAN_TYPE_P (cmp_op_type)
return get_vcond_mask_icode (TYPE_MODE (value_type), && get_vcond_mask_icode (TYPE_MODE (value_type),
TYPE_MODE (cmp_op_type)) != CODE_FOR_nothing; TYPE_MODE (cmp_op_type)) != CODE_FOR_nothing)
return true;
if (GET_MODE_SIZE (value_mode) != GET_MODE_SIZE (cmp_op_mode) if (GET_MODE_SIZE (value_mode) != GET_MODE_SIZE (cmp_op_mode)
|| GET_MODE_NUNITS (value_mode) != GET_MODE_NUNITS (cmp_op_mode) || GET_MODE_NUNITS (value_mode) != GET_MODE_NUNITS (cmp_op_mode)
|| get_vcond_icode (TYPE_MODE (value_type), TYPE_MODE (cmp_op_type), || get_vcond_icode (TYPE_MODE (value_type), TYPE_MODE (cmp_op_type),
......
2016-02-09 Andrew Pinski <apinski@cavium.com>
PR tree-opt/69282
* gcc.c-torture/compile/20160205-1.c: New testcase.
2016-02-09 Michael Meissner <meissner@linux.vnet.ibm.com> 2016-02-09 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/68404 PR target/68404
......
int a[32];
int fn1(int d) {
int c = 1;
for (int b = 0; b < 32; b++)
if (a[b])
c = 0;
return c;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment