This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
possible regression... where to look at?
- From: Dmitry <diwil at spec dot ru>
- To: gcc at gcc dot gnu dot org
- Date: Fri, 12 Mar 2004 15:26:06 +0300
- Subject: possible regression... where to look at?
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.