This is like PR 19580 but a request to optimize it on the tree level instead of just on the RTL level. Mainly because we don't catch it for PPC (with 3.3.3 or with -fno-gcse). int r[6];
void f (int n) { while (-- n) { r [0] += r [5]; r [1] += r [0]; r [2] += r [1]; r [3] += r [2]; r [4] += r [3]; r [5] += r [4]; } } We should be able to pull out the load and stores for r[0] ... r[5]. If we do it on the tree level, we also just fix the problem for 4.0 also (but I think this might need more aliasing analysis or I could be wrong). -- Summary: Missed store monition on the tree level (on PPC in general) Product: gcc Version: 4.0.0 Status: UNCONFIRMED Keywords: missed-optimization, alias, TREE Severity: enhancement Priority: P2 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pinskia at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19581