possible regression... where to look at?
Dmitry
diwil@spec.ru
Fri Mar 12 12:26:00 GMT 2004
Fellows,
I moved my port from 3.2 to 3.4 and found the following:
for the code given:
uint16_t a;
void f()
{
if(a & 8) gettt();
}
gcc-3.4-20040310 produces something like:
move a, reg
reg >>= 1
reg >>= 1
reg >>= 1
reg = reg & 1 (this sets bit C if result is not zero)
if C then gettt()
return
Which enlarges result code, etc.
gcc-3.2.X did it the way:
move a,reg
reg = reg & 8
if C then gettt()
return
So, the question is:
Is it general gcc-3.4 regression or I have to define something extra?
Thanks in advance,
Dmitry.
More information about the Gcc
mailing list