This is the mail archive of the
mailing list for the GCC project.
bug in aliasing
- To: gcc at gcc dot gnu dot org
- Subject: bug in aliasing
- From: reza at apple dot com
- Date: Wed, 10 Oct 2001 15:57:56 -0700
- Cc: Reza Yazdani <reza at apple dot com>
It seems gcc does not move an invariant local array element out of the
loop. In the following test "str" is
not moved out of the loop. I went through the interference analysis
routines and it seems it assumes a store
into any stack variable (m1 array in this case) will interfere with all
variables allocated on stack, such as str
in this case.
I was going to find a solution for this problem, but I thought I would
ask the experts in the community before I take
a shot at it.
The assembly code is:
lwz r3,40(r1) <-- loop invariant