optimization/8541: Alpha architecture: Wrong code with -O1 and higher (Regression from 2.95)
Falk Hueffner
falk.hueffner@student.uni-tuebingen.de
Tue Nov 19 14:16:00 GMT 2002
The following reply was made to PR optimization/8541; it has been noted by GNATS.
From: Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
To: cludwig@cdc.informatik.tu-darmstadt.de
Cc: gcc-gnats@gcc.gnu.org
Subject: Re: optimization/8541: Alpha architecture: Wrong code with -O1 and higher (Regression from 2.95)
Date: 12 Nov 2002 13:01:25 +0100
// a1 * RADIX + a0 = quot * b + RV
inline udigit
divide (udigit & quot, udigit a1, udigit a0, udigit b)
{
udigit a[2] = { a0, a1 };
return mpn_divrem_1(", 0, a, 2, b);
}
[...]
udigit accum_l, accum_h, temp_h, temp_l, carry;
[...]
accum_h = divide(carry, 0, accum_h, pp);
It seems to me that mpn_divrem_1 might write 2 words to carry,
clobbering random stack memory. Are you sure it doesn't?
--
Falk
More information about the Gcc-prs
mailing list