This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/19703] [4.0 Regression] Poor optimisation of loop test, DOM causing unsigned to int and missing combine compares
- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 30 Jan 2005 19:20:29 -0000
- Subject: [Bug tree-optimization/19703] [4.0 Regression] Poor optimisation of loop test, DOM causing unsigned to int and missing combine compares
- References: <20050130025905.19703.andrewhutchinson@cox.net>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-30 19:20 -------
Even though DOM is the problem, IV-OPTS can be improved so we don't create the casts in the first
place, patch here to do that: <http://gcc.gnu.org/ml/gcc-patches/2005-01/msg02209.html>.
I will try get a testcase where DOM messes up even without IV-OPTs doing anything.
And here is that testcase, yes it is werid for someone to do this but ...:
extern void foo6(int);
void testloop6 (void)
{
unsigned int D1133;
int i;
i = 100;
do {
foo6 (i);
i = ((unsigned int) i) + 4294967286U;
}while (i != 0);
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19703