This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/28690] [4.2 Regression] Performace problem with indexed load/stores on powerpc
- From: "bergner at vnet dot ibm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 22 Sep 2006 16:56:42 -0000
- Subject: [Bug middle-end/28690] [4.2 Regression] Performace problem with indexed load/stores on powerpc
- References: <bug-28690-5233@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #13 from bergner at vnet dot ibm dot com 2006-09-22 16:56 -------
Yet another test case from Anton we don't catch. Will they never end?!?! ;)
int indexedload(int *base, int len)
{
int i, sum = 0;
for (i=0; i < len; i++)
sum += base[i];
return sum;
}
In this case, LEGITIMIZE_ADDRESS cannot help, because it is never passed an
operand that includes the base pointer. Instead, we're passed a pseudo
register that was set previously to calculation using the base pointer, so in
this case, we can't propagate the REG_POINTER flag.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28690