diff options
author | Eric Botcazou <ebotcazou@libertysurf.fr> | 2002-10-29 15:20:16 +0100 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2002-10-29 06:20:16 -0800 |
commit | 6e7727ebee6ef407d7ec9cd801b1920921d123f7 (patch) | |
tree | a894c4d3f6fd1aee6a01af67ad8e471559c877a4 /gcc/expr.c | |
parent | 02c6a17aefd96ea23dfe2adb28fe6cf358446ad2 (diff) | |
download | gcc-6e7727ebee6ef407d7ec9cd801b1920921d123f7.zip gcc-6e7727ebee6ef407d7ec9cd801b1920921d123f7.tar.gz gcc-6e7727ebee6ef407d7ec9cd801b1920921d123f7.tar.bz2 |
expr.c (expand_expr): Don't use simplify_binary_operation; check for zero operands explicitly.
* expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
check for zero operands explicitly.
From-SVN: r58623
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -7912,9 +7912,10 @@ expand_expr (exp, target, tmode, modifier) { op0 = expand_expr (TREE_OPERAND (exp, 0), subtarget, VOIDmode, 0); op1 = expand_expr (TREE_OPERAND (exp, 1), NULL_RTX, VOIDmode, 0); - temp = simplify_binary_operation (PLUS, mode, op0, op1); - if (temp) - return temp; + if (op0 == const0_rtx) + return op1; + if (op1 == const0_rtx) + return op0; goto binop2; } |