This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: optimization/8794: [3.2/3.3 regression] optimization improperly eliminates certain expressions
- From: Eric Botcazou <ebotcazou at libertysurf dot fr>
- To: reichelt at igpm dot rwth-aachen dot de
- Cc: gcc-bugs at gcc dot gnu dot org,gcc-prs at gcc dot gnu dot org,nobody at gcc dot gnu dot org,pageexec at freemail dot hu,gcc-gnats at gcc dot gnu dot org
- Date: Thu, 5 Dec 2002 19:49:40 +0100
- Subject: Re: optimization/8794: [3.2/3.3 regression] optimization improperly eliminates certain expressions
- References: <20021203161003.9493.qmail@sources.redhat.com>
> Old Synopsis: optimization improperly eliminates certain expressions
> New Synopsis: [3.2/3.3 regression] optimization improperly eliminates
> certain expressions
>
> State-Changed-From-To: open->analyzed
> State-Changed-By: reichelt
> State-Changed-When: Tue Dec 3 08:10:01 2002
> State-Changed-Why:
> Confirmed.
>
> OK with gcc 2.95.x, but fails with gcc 3.0.x, 3.2-branch,
> and mainline. (Checked also on mips-sgi-irix6.5.)
Are you sure for mainline ? I can't reproduce it with:
gcc version 3.3 20021205 (experimental)
The fix seems to be:
2002-11-20 Jakub Jelinek <jakub@redhat.com>
* combine.c (force_to_mode): Only replace with (not Y) if all bits in
fuller_mask (not just mask) are set in C.
http://gcc.gnu.org/ml/gcc-patches/2002-11/msg01045.html
--
Eric Botcazou