This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/18137] [4.0 Regression] arguments being gimple registers cause redundant memory loads
- 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: 25 Nov 2004 23:54:33 -0000
- Subject: [Bug rtl-optimization/18137] [4.0 Regression] arguments being gimple registers cause redundant memory loads
- References: <20041025005059.18137.hubicka@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-11-25 23:54 -------
A simpler exampler which shows the problem.
Compile with -O1 -fno-ivopts:
void
fcpy(float *restrict a, float *restrict b,
float *restrict aa, float *restrict bb, int n)
{
int i;
for(i = 0; i < n; i++) {
aa[i]=a[i];
bb[i]=b[i];
}
}
You will see that we pull the load to aa into the loop which is wrong.
--
What |Removed |Added
----------------------------------------------------------------------------
Summary|arguments being gimple |[4.0 Regression] arguments
|registers cause redundant |being gimple registers cause
|memory loads |redundant memory loads
Target Milestone|--- |4.0.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18137