From: Jakub Jelinek Date: Wed, 3 Dec 2014 20:35:08 +0000 (+0100) Subject: re PR c/59708 (clang-compatible checked arithmetic builtins) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e9082138bd78d2eb4e3f3b2af8127c6b2bcfbe84;p=gcc.git re PR c/59708 (clang-compatible checked arithmetic builtins) PR c/59708 * expmed.c (expand_widening_mult): Return const0_rtx if coeff is 0. From-SVN: r218331 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eff109f584c..aa2f9589e5f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2014-12-03 Jakub Jelinek + PR c/59708 + * expmed.c (expand_widening_mult): Return const0_rtx if + coeff is 0. + * doc/gimple.texi (gimple_build_assign_with_ops): Remove. (gimple_build_assign): Document the new overloads. diff --git a/gcc/expmed.c b/gcc/expmed.c index 0304e46ebb3..708f04f11c5 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -3289,6 +3289,9 @@ expand_widening_mult (machine_mode mode, rtx op0, rtx op1, rtx target, enum mult_variant variant; struct algorithm algorithm; + if (coeff == 0) + return CONST0_RTX (mode); + /* Special case powers of two. */ if (EXACT_POWER_OF_2_OR_ZERO_P (coeff)) {