From caf624554c8dd1bc1bf582a9ff38dec033fba5b3 Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Mon, 30 Jul 2012 15:46:08 +0000 Subject: [PATCH] re PR middle-end/53823 (FAIL: gcc.c-torture/execute/930921-1.c execution at -O0 and -O1) PR middle-end/53823 * expmed.c (expand_mult): Skip synth_mult for constant double op1 except for special cases. Don't initialize coeff and is_neg. From-SVN: r189980 --- gcc/ChangeLog | 6 ++++++ gcc/expmed.c | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2b5385f4e52..3b26c17ff82 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2012-07-30 John David Anglin + + PR middle-end/53823 + * expmed.c (expand_mult): Skip synth_mult for constant double op1 except + for special cases. Don't initialize coeff and is_neg. + 2012-07-30 Ulrich Weigand Richard Earnshaw diff --git a/gcc/expmed.c b/gcc/expmed.c index 9743fc05ee7..1fe003444f8 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -3176,8 +3176,8 @@ expand_mult (enum machine_mode mode, rtx op0, rtx op1, rtx target, if (INTEGRAL_MODE_P (mode)) { rtx fake_reg; - HOST_WIDE_INT coeff = 0; - bool is_neg = false; + HOST_WIDE_INT coeff; + bool is_neg; int mode_bitsize; if (op1 == CONST0_RTX (mode)) @@ -3230,6 +3230,8 @@ expand_mult (enum machine_mode mode, rtx op0, rtx op1, rtx target, } goto skip_synth; } + else + goto skip_synth; } else goto skip_synth;