From: John David Anglin Date: Mon, 16 Aug 2010 20:24:54 +0000 (+0000) Subject: backport: re PR tree-optimization/44632 (wrong code for complex division) X-Git-Tag: releases/gcc-4.4.5~136 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=405715122e5b16d798308ce6178e970a3c9460de;p=thirdparty%2Fgcc.git backport: re PR tree-optimization/44632 (wrong code for complex division) Backport from mainline: 2010-08-09 Richard Guenther PR middle-end/44632 * function.c (gimplify_parameters): Do not clear addressable bit of the original parameter. From-SVN: r163285 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0416f0c9d2c7..d8cfcc16bedb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2010-08-16 John David Anglin + + Backport from mainline: + 2010-08-09 Richard Guenther + + PR middle-end/44632 + * function.c (gimplify_parameters): Do not clear addressable + bit of the original parameter. + 2010-08-14 John David Anglin Revert: diff --git a/gcc/function.c b/gcc/function.c index 9d1b471f157d..cba4a0509545 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -3407,12 +3407,10 @@ gimplify_parameters (void) DECL_IGNORED_P (local) = 0; /* If PARM was addressable, move that flag over to the local copy, as its address will be taken, - not the PARMs. */ + not the PARMs. Keep the parms address taken + as we'll query that flag during gimplification. */ if (TREE_ADDRESSABLE (parm)) - { - TREE_ADDRESSABLE (parm) = 0; - TREE_ADDRESSABLE (local) = 1; - } + TREE_ADDRESSABLE (local) = 1; } else {