------- Comment #3 from amylaar at gcc dot gnu dot org 2009-01-09 17:34 -------
(In reply to comment #1)
> Testcase?
Ok, I now have a testcase that is almost, but not quite, entirely unlike
fbital. About the only characteristic it shares with fbital is that it has
a loop which provides opportunities for pessimizing constant propagation
through phi nodes.
void
f (int i, long *a, long *b)
{
for (; --i >= 0; a++, b++)
{
b[i] = 0;
#define PART(I) if ((a[i] << (I)) > -15) b[i] += 0x7fffffffL / (I);
PART (1);
PART (2);
PART (3);
PART (4);
PART (5);
PART (6);
}
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38785