------- Comment #3 from pinskia at gcc dot gnu dot org 2007-07-04 14:24 -------
Here is a reduced testcase which has only one function in it:
int inb(int);
void is870(unsigned int wkport, unsigned char j)
{
unsigned int tmport;
unsigned char i;
for (i = 0; i < 16; i++)
{
tmport = wkport + 0x18;
tmport += 0x07;
while ((inb(tmport) & 0x80) == 0)
{
if ((inb(tmport) & 0x01) != 0)
{
tmport -= 0x06;
tmport += 0x06;
}
}
tmport = wkport + 0x14;
tmport += 0x04;
tmport += 0x07;
widep_in1:
if ((j & 0x01) != 0)
{
tmport -= 0x06;
tmport += 0x06;
goto widep_in1;
}
while ((inb(tmport) & 0x80) == 0) {}
}
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32606