summaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2017-11-20 16:02:55 +0000
committerRichard Sandiford <richard.sandiford@linaro.org>2017-11-20 16:02:55 +0000
commitd58952aefb03632bbb5b441d5c0bd330711f0af1 (patch)
treed046e56bfbd6a40106ae6ab96fafc954f1dfc955 /gcc/expr.c
parent648f8fc59b2cc39abd24f4c22388b346cdebcc31 (diff)
parent50221fae802a10fafe95e61d40504a58da33e98f (diff)
downloadgcc-linaro-dev/sve.tar.gz
Merge trunk into svelinaro-dev/sve
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 31ff5e188e1..799c9e393cc 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -9377,7 +9377,7 @@ expand_expr_real_2 (sepops ops, rtx target, machine_mode tmode,
return target;
}
- case STRICT_REDUC_PLUS_EXPR:
+ case FOLD_LEFT_PLUS_EXPR:
{
op0 = expand_normal (treeop0);
op1 = expand_normal (treeop1);
@@ -9392,12 +9392,7 @@ expand_expr_real_2 (sepops ops, rtx target, machine_mode tmode,
create_input_operand (&ops[1], op0, mode);
create_input_operand (&ops[2], op1, vec_mode);
if (maybe_expand_insn (icode, 3, ops))
- {
- target = ops[0].value;
- if (GET_MODE (target) != mode)
- return gen_lowpart (tmode, target);
- return target;
- }
+ return ops[0].value;
}
/* Nothing to fall back to. */